2007-02-16  Chris Peterson <Chrisp@ucla.edu>

	* dlls/comctl32/tests/treeview.c:
	comctl32: treeview: New conformance tests for TreeView controls.

2007-02-15  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

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

	* dlls/shell32/shell32_Ko.rc:
	shell32: Updated Korean resource.

2007-02-16  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Fix fstat's handling of pipes and char devices.
	For pipes/char devices, st_dev and st_rdev should be the fd, st_nlink
	is always 1, and st_mode is S_IFIFO and S_IFCHR respectively.
	Added tests to prove the new behaviour right.

2007-02-15  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/computername.c, dlls/kernel32/tests/environ.c:
	kernel32: Fix the GetComputerName* functions to not write to the buffer at
	all if there is not enough space.
	Add tests for the GetComputerName* functions that show this issue.
	Fix an off-by-one error in setting the size when there is not enough space.
	Remove the exception handlers for GetComputerNameW,
	GetComputerNameExA/W, since testing on XP SP2 shows that access
	violations are not caught and these are not present on Win9x, which
	does have an exception handler.

	* dlls/advapi32/tests/security.c, server/token.c:
	server: Track the impersonation level of tokens.

	* server/token.c:
	server: Track IDs for tokens and modifications made to tokens.

2007-02-15  Farshad Agah <f_agah@yahoo.com>

	* dlls/comctl32/tests/monthcal.c:
	comctl32: Added monthcal test cases.

2007-02-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/bitmap.c, dlls/gdi32/tests/bitmap.c:
	gdi32: CreateBitmapIndirect should ignore the provided bm.bmWidthBytes.

2007-02-15  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/tests/trackbar.c:
	comctl32/tests: Add missing '\n's to ok() calls.

2007-02-15  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/wined3d_private.h:
	wined3d: Remove the d3d9.h include from wined3d_private.h.

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h,
	  include/wine/wined3d_types.h:
	wined3d: Get rid of any remaining d3d9 stuff in directx.c.

	* dlls/wined3d/context.c, include/wine/wined3d_types.h:
	wined3d: Add WINED3DCREATE flags and use them.

	* dlls/d3d8/device.c, dlls/d3d8/directx.c, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/d3d9/swapchain.c, dlls/ddraw/ddraw.c,
	  dlls/wined3d/device.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_types.h:
	wined3d: Fix WINED3DPRESENT_PARAMETERS and use it instead of
	D3DPRESENT_PARAMETERS.

2007-02-15  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/ntdll/tests/exception.c:
	ntdll: Add a vectored exception handling test to the existing RtlRaiseException
	test.
	Show that context changes in vectored handler also affect stack handlers.
	Show that vectored handlers also get the changed context.Eip value.

2007-02-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/tests/font.c:
	gdi32/tests: Create a window for justification tests that generate output
	instead of painting over the desktop.

2007-02-15  Rob Shearman <rob@codeweavers.com>

	* dlls/advapi32/tests/security.c:
	advapi32: Add tests for token impersonation levels and what operations are
	allowed at each level.

	* dlls/advapi32/tests/security.c:
	advapi32: Add some more tests for AccessCheck that determine what
	token impersonation levels it accepts and to show that it doesn't
	accept primary tokens.

	* dlls/dbghelp/stack.c:
	dbghelp: nread can be NULL for read_mem and read_mem64.

2007-02-15  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/device.c:
	d3d8: Set WINED3DPRESENT_PARAMETERS.MultiSampleQuality to a valid pointer.

	* dlls/wined3d/surface.c:
	wined3d: Convert the full surface for now.
	Until we have proper subrectangle handling for offscreen surfaces,
	surface conversion has to use the real surface sizes, and not the size
	of the opengl subrectangle that it is going to upload. Due to the
	power of 2 limitations the gl height may be bigger than the real
	surface height. If that is not the case, the uploading function will
	pick the correct parts from the converted surface data.

	* dlls/wined3d/surface.c:
	wined3d: Read offscreen render targets upside down when blitting them to
	a texture.

	* dlls/d3d9/tests/Makefile.in, dlls/d3d9/tests/query.c,
	  dlls/wined3d/device.c:
	wined3d: Test for supported queries.
	This test contains a table of known supported / known unsupported
	queries. In theory wined3d could just report the queries it supports,
	but applications may make some assumtions regarding supported /
	unsupported queries and stop working if they find a query unexpectadely
	supported or unsupported. It also tests what is supposed to happen if an
	unsupported query is created.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	6/10: WineD3D: rsq and rcp instructions may need a default swizzle in arb.
	ARB shaders need a swizzle for the RSQ and RCP instructions, while d3d
	shaders do not. The DirectX sdk says that the x component is used if
	no swizzle is given.

	* dlls/wined3d/device.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Restore the display mode when releasing a swapchain.

	* dlls/ddraw/device.c:
	ddraw: Handle mipmapped mag filters by ignoring the mipmap parameter.

	* dlls/ddraw/device.c:
	ddraw: Handle mipmapped TEXTUREMIN render states.

	* dlls/wined3d/basetexture.c:
	wined3d: Remove empty texture stage applying loop.

	* dlls/ddraw/device.c:
	ddraw: Forward D3DRS_TEXTUREADDRESS* and D3DTSS_ADDRESS* to sampler states.

2007-02-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/tests/font.c:
	gdi32: Skip the SYMBOL_CHARSET test if Symbol or Wingdings is not installed.

	* dlls/gdi32/tests/font.c:
	gdi32: Fix a typo in the memcmp call.

2007-02-15  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c:
	wined3d: Get rid of any remaining d3d9 stuff in surface.c and surface_gdi.c.

	* dlls/wined3d/stateblock.c:
	wined3d: Get rid of any remaining d3d9 stuff in stateblock.c.

	* dlls/wined3d/state.c:
	wined3d: Get rid of any remaining d3d9 stuff in state.c.

	* dlls/wined3d/query.c:
	wined3d: Use WINED3DISSUE_BEGIN / WINED3DISSUE_END rather than D3DISSUE_BEGIN
	/ D3DISSUE_END.

	* dlls/wined3d/resource.c, include/wine/wined3d_types.h:
	wined3d: Add the WINED3DSPD_IUNKNOWN flag and use it.

	* dlls/wined3d/palette.c:
	wined3d: Use WINED3DRTYPE_SURFACE rather than D3DRTYPE_SURFACE.

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h:
	wined3d: Add WINED3DVS20 & WINED3DVS20CAPS flags and use them.

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h:
	wined3d: Add WINED3DPS20 & WINED3DPS20CAPS flags and use them.

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h:
	wined3d: Add WINED3DDTCAPS flags and use them.

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h:
	wined3d: Add WINED3DLINECAPS flags and use them.

2007-02-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Change internal imagelist bitmap storage in the way applications
	with pre-compiled imagelists expect it.

2007-02-06  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/advapi32/tests/security.c:
	advapi32: Add more tests for DuplicateHandle security.

2007-02-07  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/ntdll/sec.c, include/wine/server_protocol.h, server/protocol.def,
	  server/request.h, server/token.c, server/trace.c:
	ntdll/server: Implement NtSetSecurityObject. With tests.

2007-02-06  Vitaliy Margolen <wine-patches@kievinfo.com>

	* server/object.c, server/object.h:
	server: Add security descriptor field to object struct.

2007-02-08  Pedro Araujo Chaves Jr <inckie@gmail.com>

	* dlls/gdi32/font.c, dlls/gdi32/tests/font.c:
	gdi32: Fix for GetTextExtentExPointW() and ExtTextOutW().

2007-02-14  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h:
	wined3d: Add WINED3DPTADDRESSCAPS flags and use them.

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h:
	wined3d: Add WINED3DPCMPCAPS flags and use them.

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h:
	wined3d: Add WINED3DPMISCCAPS flags and use them.

2007-02-15  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h:
	wined3d: Add WINED3DPBLENDCAPS flags and use them.

2007-02-14  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h:
	wined3d: Add WINED3DSTENCILCAPS flags and use them.

	* dlls/wined3d/directx.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_caps.h:
	wined3d: Add WINED3DTEXOPCAPS flags and use them.

2007-02-15  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Restore blitting environment after modifying it.

	* dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: alphaop fixes for color keying.

	* dlls/wined3d/state.c:
	wined3d: Enable color keying only for surfaces without an alpha channel.

	* dlls/ddraw/surface.c, dlls/ddraw/tests/dsurface.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c:
	ddraw, wined3d: Color keying tests and fixes.

	* dlls/wined3d/surface.c:
	wined3d: Accelerated blits from and to offscreen render targets.

	* dlls/wined3d/surface.c, dlls/wined3d/utils.c:
	wined3d: Convert and load U8V8 surfaces as rgb.
	GL_INDEX is definitly not the way to load U8V8 surfaces

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Implement texbem in arb, improve it in glsl.

	* dlls/wined3d/baseshader.c, dlls/wined3d/directx.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Load one bump mapping environment matrix into pixel shaders if needed.

	* dlls/wined3d/state.c:
	wined3d: Give the bump env matrices their own states.

2007-02-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/font.c, dlls/gdi32/tests/font.c:
	gdi32: Revert 1440eb5a35dc95dea1836d9035b51e2b15d83703 and add the test showing
	that the change was wrong.

2007-02-14  Jason Green <jave27@gmail.com>

	* dlls/riched20/editor.c:
	riched20: If outside of the richedit window, return earlier.
	Prevents a crash when selecting text outside of a richedit control box.

2007-02-14  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/vertexshader.c:
	wined3d: Use WINED3D_OK rather than D3D_OK.

	* dlls/wined3d/device.c, include/wine/wined3d_types.h:
	wined3d: Use WINED3DPRESENT_BACK_BUFFER_MAX rather than
	D3DPRESENT_BACK_BUFFER_MAX.

	* dlls/wined3d/device.c:
	wined3d: Use WINED3DUSAGE rather than D3DUSAGE.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c:
	wined3d: Use WINED3DSTREAMSOURCE_INSTANCEDATA rather than
	D3DSTREAMSOURCE_INSTANCEDATA.

2007-02-14  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Do not access NULL when HeapAlloc failed.

2007-02-14  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/user32/dialog.c, dlls/user32/tests/dialog.c,
	  dlls/user32/tests/resource.rc:
	user32: Fix error return values in DialogBoxParam + simple test.

2007-02-11  Steven Stein <frosty522@wourld.com>

	* dlls/msi/action.c:
	msi: ValidateProductID action stub.

	* dlls/msi/dialog.c:
	msi: Added "Default" control condition to msi_dialog_set_control_condition.

2007-02-12  Ivan Sinitsin <ivan@etersoft.ru>

	* dlls/comdlg32/colordlg.c:
	comdlg32: Set the right background color of the dialog window "Choose color".

2007-02-11  Misha Koshelev <mk144210@bcm.tmc.edu>

	* programs/wineboot/Makefile.in, programs/wineboot/wineboot.c:
	wineboot: Start items in StartUp folder on boot.

2007-02-10  Misha Koshelev <mk144210@bcm.tmc.edu>

	* dlls/shell32/tests/shelllink.c:
	shell32/tests: Test creating shell links for commands on path.

	* dlls/shell32/shelllink.c:
	shell32: Properly create shell links for commands on path.

2007-02-13  Aric Stewart <aric@codeweavers.com>

	* dlls/user32/painting.c, dlls/user32/tests/win.c:
	user32: Scroll window fix.
	Fix the case where the scrolling amount exceeds the window but still
	falls within the clipping rect. This generates an additional update
	region that needs to be invalidated.

2007-02-12  Keith Stevens <fozziethebeat@gmail.com>

	* dlls/comctl32/tests/Makefile.in, dlls/comctl32/tests/trackbar.c:
	comctl32: Add trackbar tests.

2007-02-14  Francois Gouget <fgouget@free.fr>

	* dlls/atl/atl_main.c, dlls/comctl32/string.c, dlls/comdlg32/printdlg.c,
	  dlls/mapi32/tests/imalloc.c, dlls/mshtml/tests/htmldoc.c,
	  dlls/oleaut32/tests/vartest.c, dlls/shell32/shelllink.c,
	  dlls/shell32/shellord.c, dlls/shell32/tests/shlfolder.c,
	  dlls/shlwapi/string.c, dlls/winealsa.drv/dsoutput.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/state.c,
	  dlls/winspool.drv/tests/info.c, dlls/ws2_32/socket.c,
	  include/ddraw.h, include/wine/mmsystem16.h,
	  programs/uninstaller/main.c:
	Assorted spelling fixes.

2007-02-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/imaadp32.acm/imaadp32.c:
	imaadp32.acm: Constify some variables.

	* dlls/itss/moniker.c:
	itss: Constify a variable.

	* dlls/dxdiagn/provider.c:
	dxdiagn: Constify a variable.

2007-02-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/ddraw.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	wined3d: More fullscreen window fixes.

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c,
	  dlls/d3d9/vertexdeclaration.c:
	wined3d: Properly release the converted vertex declaration.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Instancing emulation.

	* dlls/wined3d/state.c:
	wined3d: Correctly load vertex attributes with a stride of 0.

	* dlls/wined3d/device.c:
	wined3d: Do not leave SetStreamSource early.

	* dlls/wined3d/device.c, dlls/wined3d/vertexbuffer.c:
	wined3d: Do not release the local vertex buffer copy.

	* dlls/wined3d/device.c:
	wined3d: SetStreamSource does not modify stream flags.

	* include/wine/wined3d_gl.h:
	wined3d: Load single attribute setter functions.

	* dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move lights to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Replace the light chain with a hashmap.

2007-02-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/opengl.c, include/wine/library.h:
	winex11.drv: Added a check for the ATI driver corrupting %fs.
	Based on a patch by Lei Zhang.

	* dlls/shell32/shlfileop.c:
	shell32: Don't wrap SHELL_ConfirmIDs in an assert. Fixed return value.

	* dlls/d3d8/vertexdeclaration.c:
	d3d8: Avoid a size_t printf format warning.

2007-02-12  Shanren Zhou <shanren@ucla.edu>

	* dlls/comctl32/tests/header.c:
	comctl32: Add header tests.

2007-02-13  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/install.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c:
	mshtml: Make load_gecko thread safe.

2007-02-13  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/shell32/shell32_Ko.rc:
	shell32: Updated Korean resource.

2007-02-13  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/version/info.c, include/winver.h:
	version: Constify a formal parameter of VerQueryValue{A|W}().

2007-02-13  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/custom.c, dlls/msi/msipriv.h, dlls/msi/package.c:
	msi: Find pending custom actions by GUID.

2007-02-13  Marcus Meissner <meissner@suse.de>

	* tools/bin2res.c:
	bin2res: Use fstat, handle errors.

2007-02-13  Lei Zhang <thestig@google.com>

	* tools/wineshelllink:
	tools/wineshelllink: Create links with WINEPREFIX.

2007-02-14  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/msg.c:
	user32: Avoid sending unwanted DM_GETDEFID/DM_SETDEFID messages.

2007-02-13  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/vertexdeclaration.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/wined3d_private.h:
	d3d8: Don't store the d3d8 declaration in the wined3d object.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/vertexdeclaration.c, dlls/wined3d/arb_program_shader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	d3d8: Move loading local d3d8 vertex shader constants from wined3d to d3d8.

	* dlls/d3d8/device.c, dlls/d3d9/d3d9_private.h,
	  dlls/d3d9/vertexdeclaration.c, dlls/wined3d/device.c,
	  dlls/wined3d/vertexdeclaration.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	d3d9: Don't store the d3d9 declaration in the wined3d object.

	* dlls/d3d8/device.c, dlls/wined3d/arb_program_shader.c,
	  dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/state.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Get rid of the vertexDeclaration field in IWineD3DVertexShaderImpl.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/vertexshader.c:
	d3d8: Store the d3d8 vertex declaration in the d3d8 vertex shader.

	* dlls/d3d8/Makefile.in, dlls/d3d8/d3d8_private.h,
	  dlls/d3d8/vertexdeclaration.c:
	d3d8: Add an IDirect3DVertexDeclaration8 class to hold the wined3d vertex
	declaration.

	* dlls/wined3d/baseshader.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/utils.c,
	  dlls/wined3d/vertexdeclaration.c, include/wine/wined3d_types.h:
	wined3d: Add WINED3DDECLUSAGE, use it.

	* include/wine/wined3d_types.h:
	wined3d: Get rid of WINED3DSHADERDECLUSAGE.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Don't use WINED3DSHADERDECLUSAGE_PSIZE / WINED3DSHADERDECLUSAGE_FOG.

2007-02-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/cabinet/fdi.c, dlls/msi/tests/install.c:
	cabinet: Fixed fd leak in case of error.

2007-02-14  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/msvcrt/file.c, dlls/msvcrt/msvcrt.spec,
	  dlls/msvcrt/tests/headers.c:
	msvcrt: Implemented stat64, wstat64 and fstat64.
	Change all other variations of stat use the stat64 family, since it is
	the most general.

	* dlls/msvcrt/msvcrt.h, include/msvcrt/sys/stat.h,
	  include/msvcrt/sys/types.h, include/msvcrt/wchar.h:
	msvcrt: Added declarations for functions and structures related to stat64.

2007-02-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/painting.c:
	gdi32: Fixed typo in AngleArc.

2007-02-13  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Loop through the rest of the possible filters even when a connection
	fails.

	* tools/wine.inf:
	wine.inf: Add quartz.dll to the list of installed fake DLLs.

	* dlls/quartz/avisplit.c:
	quartz: Remove 1GB AVI size limitation.

	* dlls/quartz/filesource.c:
	quartz: Properly handle input parameters in FileSource_GetCurFile.

2007-02-13  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Do not allocate compressed surfaces with glTexImage2D.

	* dlls/wined3d/swapchain.c:
	wined3d: Swap the SFLAG_DIBSECTION flag when swaping hdc and memory.

	* dlls/wined3d/device.c:
	wined3d: Check error conditions before creating the object.

	* dlls/wined3d/surface.c:
	wined3d: Partial render target locking.

	* dlls/d3d9/tests/surface.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/state.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_main.c, dlls/wined3d/wined3d_private.h:
	wined3d: Always use np2 repacking if no native np2 support is available.

	* dlls/wined3d/surface.c:
	wined3d: Improve render target locking.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h:
	wined3d: Remove pow2Size from the surfaces.

	* dlls/wined3d/device.c:
	wined3d: Show fullscreen rendering windows.

	* dlls/d3d9/device.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	wined3d: GetRenderTargetData can call BltFast.

	* dlls/wined3d/drawprim.c:
	wined3d: Dirtify the render targets, not the primary swapchain on draws.

2007-02-13  Felix Nawothnig <flexo@holycrap.org>

	* dlls/comctl32/comboex.c, dlls/comctl32/comctl32undoc.c,
	  dlls/comctl32/header.c, dlls/comctl32/listview.c,
	  dlls/comctl32/monthcal.c, dlls/comctl32/propsheet.c,
	  dlls/comctl32/syslink.c, dlls/comctl32/tab.c,
	  dlls/comctl32/treeview.c:
	comctl32: Remove redundant NULL checks before Free() calls.

	* dlls/comctl32/tests/misc.c:
	comctl32: Add tests for Alloc() and friends.

	* dlls/comctl32/tests/Makefile.in, dlls/comctl32/tests/misc.c,
	  dlls/comctl32/tests/string.c:
	comctl32: Rename 'string' test to 'misc'.

2007-02-13  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/state.c:
	wined3d: Cleanup the pixelshader() state handler a little bit.

	* dlls/wined3d/state.c:
	wined3d: Always select the correct shader pair in the vertexdeclaration()
	state handler.

2007-02-13  Vitaly Lipatov <lav@etersoft.ru>

	* programs/cmd/Cs.rc, programs/cmd/De.rc, programs/cmd/Es.rc,
	  programs/cmd/Fr.rc, programs/cmd/Ja.rc, programs/cmd/Ko.rc,
	  programs/cmd/Nl.rc, programs/cmd/No.rc, programs/cmd/Pl.rc,
	  programs/cmd/Pt.rc, programs/cmd/Si.rc, programs/cmd/Tr.rc:
	cmd: Fix program name.

2007-02-13  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmldoc.c:
	mshtml: Don't release window if it wasn't created.

2007-02-11  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsiface.idl:
	mshtml: Added comments about frozen/not frozen interface.

2007-02-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Use wine_url in GetSpec if possible.

	* dlls/mshtml/nsio.c:
	mshtml: Forward GetAsciiSpec to GetSpec.

2007-02-13  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Added SchemeIs implementation.

2007-02-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Return "wine" as scheme of nsIURI if wine_url is set.

2007-02-09  Vitaliy Margolen <wine-patches@kievinfo.com>

	* server/token.c:
	server: Get the primary group from the token's groups.

2007-02-13  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/custom.c:
	msi: Remove an unused initializer.

	* dlls/ole32/moniker.c:
	ole32: Add missing parameter for RunningObjectTableImpl_UnInitialize.

2007-02-10  Misha Koshelev <mk144210@bcm.tmc.edu>

	* dlls/msi/tests/install.c:
	msi: Conformance test, check that INSTALLUILEVEL flags don't trigger UI install.

2007-01-19  Kirill K. Smirnov <lich@math.spbu.ru>

	* dlls/user32/tests/msg.c:
	user32/tests: Add tests for WM_SETICON.

	* dlls/user32/defwnd.c:
	user32: Handle WM_SETICON message similarly to WM_SETTEXT.

2007-02-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/exception.c:
	ntdll: Allow APCs to run while waiting for a debug event reply.

	* dlls/winex11.drv/winpos.c:
	winex11.drv: We still have to flush the display after mapping a window.
	The Photoshop splash screen needs this.

2007-02-10  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/winex11.drv/window.c:
	winex11.drv: Popup windows with system menu are managed.

2007-02-10  Leslie Choong <septikus@gmail.com>

	* dlls/comctl32/tests/updown.c:
	comctl32: updown: Getter and setter tests for updown control.

2007-02-10  Anatoly Lyutin <vostok@etersoft.ru>

	* programs/wineconsole/dialog.c:
	wineconsole: Added range of value for all up-down controls on config dialog.

	* dlls/comdlg32/fontdlg.c:
	comdlg32: fontdlg: Add initialisation for comboboxes.

2007-02-09  Tijl Coosemans <tijl@ulyssis.org>

	* tools/wineshelllink:
	wineshelllink: Fix mktemp usage on FreeBSD.

2007-02-08  Marcus Meissner <meissner@suse.de>

	* dlls/ntdll/tests/rtlstr.c:
	ntdll/tests: Fixed WCHAR overflow.

2007-01-27  Kim Lilliestierna <kill@itr.no>

	* programs/cmd/builtins.c:
	cmd: Fix the "move" command the same way as the "copy" command.

2007-02-13  Marcus Meissner <marcus@jet.franken.de>

	* tools/winedump/msmangle.c:
	winedump: Free function_name on all error paths.

2007-02-12  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/ntdll/tests/exception.c:
	ntdll: Test that shows RtlRaiseException with EXCEPTION_BREAKPOINT mangles
	Eip of context.

2007-02-13  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/atl/registrar.c:
	atl: Fix a comparison between signed and unsigned.

	* dlls/wldap32/page.c:
	wldap32: Missing HeapFree on error path (found by Smatch).

2007-02-13  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Implement ImageList_GetFlags.

	* dlls/user32/mdi.c:
	user32: Activate an MDI child on WM_SETFOCUS as well as on WM_CHILDACTIVATE.

2007-02-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dinput/joystick_linux.c, dlls/dinput/keyboard.c,
	  dlls/dinput/mouse.c:
	dinput: Constify some variables.

	* dlls/amstream/mediastream.c:
	amstream: Constify a variable.

2007-02-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Use the context manager to create onscreen contexts.

	* dlls/d3d8/device.c, dlls/d3d8/tests/device.c:
	d3d8: Deleting bound shaders unbinds them.

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/surface.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Use the context manager to select the primary render target.

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Make the context array dynamic.

	* dlls/wined3d/surface.c:
	wined3d: Improve render target to texture blits.

	* dlls/wined3d/context.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Use the context manager to prepare for blitting.

	* dlls/wined3d/Makefile.in, dlls/wined3d/context.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h:
	wined3d: Use the context manager to prepare for drawing.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Store dirty states per context.

	* dlls/wined3d/device.c, dlls/wined3d/state.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Store state optmization members in the context.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add a per context structure for context management.

2007-02-12  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/tests/http.c:
	wininet: Fix a test that fails on Windows.

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	wininet: Skip empty accept type strings in HttpOpenRequest.

2007-02-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet/ftp.c: Fix some returned error codes.

	* dlls/wininet/tests/ftp.c:
	wininet/ftp.c: Add tests to show the order of parameter checking.

2007-02-12  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: The format structures used in the marshaling code should have 1-byte
	alignment.

	* include/objidl.idl:
	include: Add more EOAC_* enumeration values to objidl.idl.
	Also add the SOLE_AUTHENTICATION_INFO and SOLE_AUTHENTICATION_LIST
	structures which are used by CoInitializeSecurity.

	* include/rpcdce.h:
	include: Fix a typo in a comment in rpcdce.h.

	* include/objidl.idl:
	include: Fix a typo in the parameter name for IClientSecurity::QueryBlanket
	in objidl.idl.

2007-02-12  Francois Gouget <fgouget@free.fr>

	* dlls/ntdll/rtl.c, include/winnt.h:
	ntdll: Fix compilation on systems that don't support nameless structs.

2007-02-09  Francois Gouget <fgouget@free.fr>

	* dlls/ntdll/rtl.c, include/winnt.h:
	ntdll: Add prototypes to winnt.h for the SList functions.

2007-02-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/url.c:
	urlmon: Added mk protocol handling test.

	* dlls/urlmon/tests/url.c:
	urlmon: Added test of handlong its protocol.

	* dlls/urlmon/binding.c:
	urlmon: Depend on Read result in report_data.

	* dlls/urlmon/binding.c:
	urlmon: Store download state in Binding object.

2007-02-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Enter new named pipe connections into the protocol connection list.

2007-02-12  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Make ImageList_Read and ImageList_Write compatible with each other,
	simplify the code.

2007-02-12  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/custom.c, dlls/msi/msipriv.h, dlls/msi/package.c:
	msi: Store dll based custom actions in a separate list.

	* dlls/msi/custom.c:
	msi: Simplify ACTION_FinishCustomActions.

2007-02-10  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Properly round negative values in shader_glsl_mov.

2007-02-10  Hans Leidekker <hans@it.vu.nl>

	* programs/wordpad/wordpad.c, tools/wine.inf:
	wordpad: Open .wri files in wordpad.

2007-02-10  Eric Pouech <eric.pouech@wanadoo.fr>

	* tools/winedump/winedump.h:
	winedump: Removed a couple of unused elements out of struct symbol.

	* tools/winedump/debug.c, tools/winedump/dump.c, tools/winedump/lnk.c,
	  tools/winedump/pdb.c, tools/winedump/winedump.h:
	winedump: Simplify guid dumping.

	* tools/winedump/dump.c, tools/winedump/main.c, tools/winedump/msc.c,
	  tools/winedump/pe.c, tools/winedump/winedump.h:
	winedump: Larger usage of symbol demangling while dumping.

	* programs/winedbg/debug.l, programs/winedbg/debugger.h,
	  programs/winedbg/intvar.h, programs/winedbg/tgt_active.c,
	  programs/winedbg/winedbg.c:
	winedbg: Support for debugging child processes.
	Added internal flag (AlsoDebugProcChild) to let winedbg debug both
	parent and child (in the same WineDbg session).

	* programs/winedbg/memory.c:
	winedbg: Correctly handle invalid read conditions.

2007-02-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/tests/ftp.c:
	wininet/ftp.c: Add another test.

2007-02-10  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet/ftp.c: Fix some returned error codes.

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet/ftp.c: Fix some returned error codes.

2007-02-09  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet/ftp.c: Fix some returned error codes.

2007-02-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Handle resource protocol like chrome protocol.

	* dlls/mshtml/nsio.c:
	mshtml: Call SetWineURL in Clone.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsio.c, dlls/mshtml/task.c:
	mshtml: Start binding asynchronously.

2007-02-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/navigate.c, dlls/mshtml/nsio.c:
	mshtml: Move AddRequest call to OnStartBinding.

	* dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c:
	mshtml: Remove no longer used [Get|Set]Moniker functions.

2007-02-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Don't test the contents of an output parameter.

2007-02-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsembed.c, dlls/mshtml/nsio.c:
	mshtml: Don't store moniker in nsURI.

	* dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c:
	mshtml: Added [Set|Get]WineURL functions to nsIWineURI.

	* dlls/mshtml/nsio.c:
	mshtml: Store URL in unicode in nsURI.

2007-02-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: Fix handling mk URLs.

	* dlls/shlwapi/url.c:
	shlwapi: Unicodified scheme detecting code.

	* dlls/itss/protocol.c, dlls/itss/tests/protocol.c:
	itss: Fix handling URLs without '/' in object name.

2007-02-09  Duane Clark <fpga@pacbell.net>

	* dlls/comctl32/tests/treeview.c, dlls/comctl32/treeview.c:
	treeview: Scrolling does not cause label being edited to lose focus.

2007-02-10  Joris Huizer <joris_huizer@yahoo.com>

	* tools/winegcc/utils.c, tools/winegcc/utils.h, tools/winegcc/winegcc.c:
	winegcc: Sign-compare fixes.

2007-02-10  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/custom.c:
	msi: Split process_handle() into two separate functions.

2007-02-09  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shell32_Bg.rc, dlls/shell32/shell32_Cs.rc,
	  dlls/shell32/shell32_De.rc, dlls/shell32/shell32_En.rc,
	  dlls/shell32/shell32_Eo.rc, dlls/shell32/shell32_Es.rc,
	  dlls/shell32/shell32_Fi.rc, dlls/shell32/shell32_Fr.rc,
	  dlls/shell32/shell32_It.rc, dlls/shell32/shell32_Ko.rc,
	  dlls/shell32/shell32_No.rc, dlls/shell32/shell32_Pl.rc,
	  dlls/shell32/shell32_Pt.rc, dlls/shell32/shell32_Ru.rc,
	  dlls/shell32/shell32_Tr.rc, dlls/shell32/shell32_Uk.rc,
	  dlls/shell32/shell32_main.h, dlls/shell32/shfldr_unixfs.c,
	  dlls/shell32/shlfileop.c, dlls/shell32/shresdef.h,
	  dlls/shell32/tests/shlfileop.c:
	shell32: Allow overwriting files in SHFileOperation(FO_COPY) (with confirmation
	dialogs).

	* dlls/shell32/shell32_En.rc, dlls/shell32/shlfileop.c,
	  dlls/shell32/shresdef.h:
	shell32: Add a confirmation dialog with a "Yes to All" option.

	* dlls/shell32/brsfolder.c:
	shell32: Make sure BrowseForFolder doesn't return NULL for the Desktop folder
	as this means a cancel.

2007-02-08  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Make shader_cleanup more useful.

2007-02-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/tests/device.c, dlls/d3d9/tests/device.c, dlls/ddraw/device.c,
	  dlls/ddraw/tests/d3d.c, dlls/wined3d/device.c,
	  dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: BeginScene and EndScene tests and fixes.

2007-02-09  Alexandre Julliard <julliard@winehq.org>

	* Make.rules.in, configure, configure.ac, dlls/oleaut32/tests/Makefile.in,
	  tools/make_makefiles:
	Make.rules: Automatically generate the header for all types of idl sources.

2007-02-09  Francois Gouget <fgouget@free.fr>

	* dlls/shell32/tests/shellpath.c:
	shell32/tests: wnsprintfA() is missing on Win9x, so use sprintf() instead.

	* dlls/shell32/tests/shlfolder.c:
	shell32/tests: Fix test_GetDisplayName() to cope with a left-over test directory.

	* dlls/shell32/tests/shlfolder.c:
	shell32/tests: ILFree() and ILIsEqual() are exported by ordinal only on
	Win9x. So use GetProcAddress().

	* dlls/ntdll/misc.c, dlls/ntdll/string.c, tools/winapi/win32.api:
	ntdll: Better match the PSDK types and fix the winapi_check warnings.

	* tools/winapi/winapi.pm, tools/winapi/winapi_local.pm:
	winapi_check: Fix handling of the -register functions.
	Unless specified otherwise they are implemented by a '__regs_' function.
	Keep track of the '-i386' flag so we can detect CONTEXT* vs. CONTEXT86*
	mismatches.
	Remove an unneeded and broken hack meant to fudge the number of parameters.

	* tools/winapi/winapi_local.pm:
	winapi_check: '-register' is compatible with stdcall. So remove this obsolete
	warning.

	* tools/winapi/win32.api:
	ntdsapi: Update win32.api to fix the winapi_check warnings.

	* include/ntdsapi.h:
	ntdsapi: Add a commented-out #include directive as a reminder.

	* include/winnt.h:
	Make winnt.h C++ compatible.

	* include/winbase.h:
	kernel32: Add prototypes to winbase.h for the SList functions.

	* dlls/ntdll/ntdll.spec:
	ntdll: The fourth parameter of RtlUnwind() is a pointer, not a long.

	* dlls/ntdll/ntdll.spec:
	ntdll: ZwRaiseException() is not a register function.

2007-02-08  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/regedit/Ko.rc:
	regedit: Updated Korean Resource.

2007-02-08  Marcus Meissner <marcus@jet.franken.de>

	* dlls/kernel32/tests/comm.c:
	kernel32/tests: Fixed several uninitialized variables.

2007-02-09  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/user32/listbox.c:
	user32/listbox: Remove deadcode (Coverity).

2007-02-08  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/msvcrt/exit.c, dlls/msvcrt/msvcrt.h:
	msvcrt: Use raise(SIGABRT) for abort() and assert().

	* dlls/msvcrt/except.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Implemented the raise function.

	* dlls/msvcrt/except.c:
	msvcrt: Reset a signal to DFL before it's used.

2007-02-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet/ftp.c: Fix some returned error codes.

2007-02-08  Konstantin Kondratyuk <kondratyuk@etersoft.ru>

	* dlls/ntdll/time.c:
	ntdll: Add Omsk time zone.

2007-02-08  Marcus Meissner <marcus@jet.franken.de>

	* dlls/kernel32/vxd.c:
	kernel32: Remove CloseHandle call.

	* dlls/devenum/devenum_main.c:
	devenum: Initialize hKeysub.

	* dlls/ntdll/file.c:
	ntdll: Initialize needs_close to FALSE.

2007-02-08  Marcus Meissner <meissner@suse.de>

	* dlls/riched20/row.c:
	riched20: Removed more dead code.

	* tools/wmc/mcl.c:
	wmc: inputbuffer is a WCHAR array.

2007-02-08  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/comctl32/comctl_Ru.rc, dlls/comdlg32/cdlg_Ru.rc,
	  dlls/msi/msi_Ru.rc, dlls/shell32/shell32_Ru.rc,
	  dlls/user32/resources/user32_Ru.rc, dlls/winmm/winmm_Ru.rc:
	Some fixes in russian resources.

2007-02-08  Hans Leidekker <ecl@it.vu.nl>

	* tools/wineshelllink:
	wineshelllink: Keep using the slash as path separator.

2007-02-08  Hans Leidekker <hans@it.vu.nl>

	* tools/wineshelllink:
	wineshelllink: Use "=" instead of "==" to compare strings.

2007-02-07  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c, dlls/msi/tests/install.c:
	msi: Don't skip files continued from a previous cabinet.

2007-02-07  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	comctl32: listview: Create the LISTVIEW_INFO in WM_NCCREATE.

2007-02-07  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/typelib.c:
	oleaut32: Fix the return value of ITypeInfo::Invoke when the property-put
	named argument isn't DISPID_PROPERTYPUT.

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/typelib.c:
	oleaut32: Implement automatic value getting in ITypeInfo::Invoke.
	If an IDispatch object is returned from in the retval for a propget
	function and an extra parameter was passed in to ITypeInfo::Invoke then
	it should call IDispatch::Invoke on the returned object with the extra
	parameter to retrieve the value of the object, which is then returned in
	pVarResult.

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/tests/tmarshal.idl:
	oleaut32: Fix the IDL for the "Value" method in the tmarshal tests.

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/tests/tmarshal.idl:
	oleaut32: Comment out "dual" attribute of IKindaEnumWidget in tmarshal test
	to cause the interface to be marshaled correctly.
	This fixes a bunch of tmarshal tests.

	* dlls/oleaut32/tests/tmarshal.c:
	oleaut32: Always register the typelib for the tmarshal tests.

2007-02-08  Detlef Riekenberg <wine.dev@web.de>

	* programs/regedit/childwnd.c:
	regedit: Do not use a local copy of a global pointer.

	* programs/regedit/childwnd.c:
	regedit: Do not pass a global available pointer to a static function.

2007-02-07  Detlef Riekenberg <wine.dev@web.de>

	* programs/regedit/framewnd.c:
	regedit: Declare some variables static.

2007-02-08  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Fix continue_call handling.

	* dlls/urlmon/binding.c:
	urlmon: Call OnProgress directly in report_data.

	* dlls/urlmon/binding.c:
	urlmon: Added ReportProgress(BINDSTATUS_DIRECTBIND) implementation.

	* dlls/urlmon/binding.c:
	urlmon: Fix ReportResult on async protocols.

2007-02-08  Mike McCormack <mike@codeweavers.com>

	* programs/msiexec/msiexec.c:
	msiexec: Catch the -Embedding flag and print out a message.

	* dlls/msi/msi_main.c, dlls/msi/msipriv.h, dlls/msi/regsvr.c:
	msi: Register the typelib.

2007-02-07  Vitaliy Margolen <wine-patches@kievinfo.com>

	* server/token.c:
	server: Fix typo. Should be group not owner.

2007-02-07  Kevin Koltzau <kevin@plop.org>

	* dlls/ntdll/rtl.c:
	ntdll: Fix compile errors for Win64.

	* include/winnt.h:
	winnt.h: Correct declaration of SLIST_HEADER and SLIST_ENTRY for Win64.

2007-02-07  Francois Gouget <fgouget@free.fr>

	* include/clusapi.h:
	clusapi: Make clusapi.h C++ compatible.

2007-02-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winex11.drv/clipboard.c, dlls/winex11.drv/codepage.c:
	winex11.drv: Remove unused items.

2007-02-08  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/parser.l:
	widl: Rename parser states to uppercase to avoid conflicts.

2007-02-07  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/user32/defwnd.c:
	user32: Don't crash if a WM_NCCREATE message is sent with lParam=0.

2007-02-07  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/comctl32/tests/rebar.c:
	comctl32/tests: Fix typo (Coverity).

2007-02-07  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/tmarshal.c:
	oleaut32: Fix a one-off test failure in the tmarshal tests -
	TYPE_E_LIBNOTREGISTERED is an expected return value.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: A value of PARAMFLAG_FNONE for wParamFlags means that the parameter
	is also marshaled and unmarshaled in the PARAMFLAG_FOUT case.

2007-02-07  Detlef Riekenberg <wine.dev@web.de>

	* programs/regedit/Bg.rc, programs/regedit/Cs.rc, programs/regedit/De.rc,
	  programs/regedit/En.rc, programs/regedit/Es.rc,
	  programs/regedit/Fr.rc, programs/regedit/Hu.rc,
	  programs/regedit/It.rc, programs/regedit/Ja.rc,
	  programs/regedit/Ko.rc, programs/regedit/Nl.rc,
	  programs/regedit/No.rc, programs/regedit/Pl.rc,
	  programs/regedit/Pt.rc, programs/regedit/Ru.rc,
	  programs/regedit/Si.rc, programs/regedit/Tr.rc,
	  programs/regedit/resource.h:
	regedit: Remove unused resource.

2007-02-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Use queue for whole ReportData implementation.

	* dlls/urlmon/binding.c:
	urlmon: Added ReportProgress(BINDSTATUS_BEGINDOWNLOADDATA) implementation.

	* dlls/urlmon/binding.c:
	urlmon: Use custom task structs.

	* dlls/urlmon/binding.c:
	urlmon: Use proc instead of enum in task queue.

	* dlls/urlmon/binding.c:
	urlmon: Unlock protocol only if it was locked.

	* dlls/urlmon/binding.c:
	urlmon: Set BINDF_NEEDFILE flag for all not urlmon protocols.

2007-02-07  Ken Thomases <ken@codeweavers.com>

	* programs/explorer/diskarb.c:
	explorer: Fix leak: always release the CFDictionary.

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio.drv: Remove obsolete FIXME.

2007-02-07  Francois Gouget <fgouget@free.fr>

	* include/advpub.h, tools/winapi/win32.api:
	advpack: Make the header more consistent with the implementation and fix the
	winapi_check warnings.

	* dlls/credui/credui_main.c, include/wincred.h, tools/winapi/win32.api:
	credui: Better match the PSDK types and fix the winapi_check warnings.

	* tools/winapi/win16.api, tools/winapi/win32.api:
	winsock & ws2_32: Update win32.api to fix the winapi_check warnings.

	* dlls/atl/atl_main.c, dlls/atl/atlbase.h, tools/winapi/win32.api:
	atl: Better match the PSDK types and fix the winapi_check warnings.

	* include/clusapi.h, tools/winapi/win32.api:
	clusapi: Better match the PSDK types and fix the winapi_check warnings.
	This also makes the headers and implementation more consistent.

	* include/wincred.h:
	credui: Make wincred.h C++ compatible.

	* dlls/browseui/tests/autocomplete.c:
	browseui: Add missing '\n's to ok() calls.

	* dlls/rpcrt4/ndr_clientserver.c, dlls/rpcrt4/rpc_epmap.c,
	  include/rpcndr.h, tools/winapi/win32.api:
	rpcrt4: Better match the PSDK types and fix the winapi_check warnings.

2007-02-07  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/tests/ftp.c:
	wininet/tests: Add a few more tests.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded (double) checks.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded (double) checks.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded (double) checks.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded (double) checks.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded (double) checks.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded (double) checks.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded (double) checks.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded (double) checks.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded (double) checks.

2007-02-07  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/browseui/aclmulti.c:
	browseui: Move 'static' to the beginning of the declaration specifier.

2007-02-07  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/iface.c:
	msi: Add a test for the version method.

2007-02-06  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/user32/tests/win.c:
	user32: Add test cases for update rects affected by ShowWindow.

2007-02-02  Aric Stewart <aric@codeweavers.com>

	* dlls/user32/combo.c:
	user32: We are calculating the height for the drop down based on
	number of items however the if statement used nIHeight (just the
	height of 1 item) and not nHeight (the height all the items).

2007-02-07  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Output endpoint information in client and server files.

	* tools/widl/parser.y, tools/widl/widltypes.h:
	widl: Add a string list type and use it for the endpoint attribute.

	* tools/widl/parser.l, tools/widl/parser.y:
	widl: Only recognize attribute keywords inside an attribute list.

	* dlls/msvcrt/file.c:
	msvcrt: Implement fopen/wfopen on top of fsopen/wfsopen instead of the other
	way around.

2007-02-03  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/msi/dialog.c:
	msi: Clean up magic numbers.

	* dlls/msi/dialog.c:
	msi: Honor attributes for combobox.

	* dlls/msi/dialog.c:
	msi: Honor msidbControlAttributesSorted attribute for list box.

2007-02-05  Juan Lang <juan_lang@yahoo.com>

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Implement _mbbtype according to MSDN.

2007-02-04  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/tests/shlfileop.c:
	shell32: shlfileop tests: Avoid buffer overflows for paths.

2007-02-04  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/winex11.drv/wintab.c:
	winex11drv: Do extra error checking when opening XInput device.

2007-02-07  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/ftp.c:
	wininet/ftp.c: Remove unneeded check.

	* dlls/urlmon/umon.c:
	urlmon: Cast-qual warning fixes.

	* dlls/urlmon/umon.c:
	urlmon: Cast-qual warning fix.

2007-02-06  Misha Koshelev <mk144210@bcm.tmc.edu>

	* dlls/msi/action.c, dlls/msi/dialog.c, dlls/msi/files.c,
	  dlls/msi/msipriv.h:
	msi: Make sure to ignore UI level flags in dialog and files as well.

2007-02-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shell32/trash.c:
	shell32: Declare some functions static.

	* dlls/shell32/shfldr_fs.c, dlls/shell32/shlexec.c,
	  dlls/shell32/shlfileop.c:
	shell32: Declare some functions static.

	* dlls/shell32/shellole.c:
	shell32: Declare some functions static.

	* dlls/shell32/dialogs.c:
	shell32: Declare some functions static.

2007-02-06  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Copy bitmaps with CopyImage so that it works also for DIBs
	(based on a patch by Oleg Krylov).

2007-02-06  Felix Nawothnig <flexo@holycrap.org>

	* dlls/comctl32/tab.c:
	comctl32: Remove unnecessary and misused mask member from TAB_ITEM.

2007-02-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/itss/protocol.c, dlls/itss/tests/protocol.c:
	itss: Allow reading from ReportData call.

	* dlls/urlmon/sec_mgr.c, dlls/urlmon/tests/misc.c:
	urlmon: Fix zone tests.

	* dlls/hhctrl.ocx/chm.c, dlls/hhctrl.ocx/chm.h, dlls/hhctrl.ocx/help.c,
	  dlls/hhctrl.ocx/webbrowser.c, dlls/hhctrl.ocx/webbrowser.h:
	hhctrl.ocx: Use mk as default protocol and code clean up.

	* dlls/hhctrl.ocx/webbrowser.c:
	hhctrl.ocx: Use SetWindowRects to set WebBrowser's size.

	* dlls/hhctrl.ocx/webbrowser.c:
	hhctrl.ocx: Remove useless SetHostNames call.

2007-02-06  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Ignore the first named argument when invoking property-put methods
	as it is mandatory and doesn't indicate that the arguments will be
	passed in as named ones.

	* dlls/oleaut32/typelib.c:
	oleaut32: Add support for named arguments in ITypeInfo::Invoke.

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/typelib.c:
	oleaut32: Copy the value directly returned from the called function
	if it is not an HRESULT value, instead of getting it from a [retval]
	attribute.

	* dlls/oleaut32/typelib.c:
	oleaut32: Fix the missing argument handling for non-byref variant arguments.

	* dlls/oleaut32/typelib.c:
	oleaut32: If an error info object was created when the invoked method failed
	then fill in exception info from the error info object.

	* dlls/ole32/compobj_private.h, dlls/ole32/marshal.c:
	ole32: Add the external references that the server gave to us to any existing
	ifproxy,
	so that the right external reference count is released when the proxy is
	destroyed.
	Protect all changes to refs in the ifproxy using interlocked functions
	and update the thread-safety documentation.

	* dlls/ole32/marshal.c:
	ole32: Release iobject and the IRpcStubBuffer object no matter which code path
	we take.
	Otherwise we would leak a reference for both of these if the ifstub was
	already created.
	Fix the FIXME in the code by releasing the stub manager if necessary.

	* dlls/comctl32/listview.c:
	comctl32: Fix the computation of the select bounds item rect
	and fixup the places that depended on the old behaviour.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Add a wrapper around the channel supplied to the IDispatch proxy
	to fixup the IID used to connect to the server and fix somewhat common
	"err:rpc:RPCRT4_OpenBinding" messages.

2007-02-06  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/msi/dialog.c:
	msi: Do not use a static variable to save the insertion position for the
	listview.

	* dlls/msi/dialog.c:
	msi: Store value of the property with each listbox element.
	This makes sure the property is set to the right value even when order in
	listbox is changed.

	* dlls/msi/dialog.c:
	msi: Do not store property for each listbox element, as it is the same one
	for the whole listbox.
	Remove struct msi_listbox_item as it only contains 1 element now.

	* dlls/msi/dialog.c:
	msi: Only insert entries into listbox if property value matches.

2007-02-06  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/user32/button.c, dlls/user32/tests/msg.c:
	user32: WM_SETFONT on button doesn't repaint directly.

2007-02-06  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/tests/joystick.c:
	dinput: Don't reset dead zone and saturation when setting data format.
	Additional tests indicate that native doesn't touch previously set
	properties.

2007-02-06  Rob Shearman <rob@codeweavers.com>

	* dlls/credui/credui.rc:
	credui: Fix the order of the controls in the dialog so that the
	keyboard shortcuts work correctly and so that tabbing through the
	controls behaves as the user expects.

2007-02-06  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Call SearchPath before LoadLibrary so that we get the full path of
	native exes and dlls.
	For builtin dlls prepend the system directory.

2007-02-06  Misha Koshelev <mk144210@bcm.tmc.edu>

	* dlls/kernel32/tests/change.c:
	kernel32: CreateThread returns NULL on error, not INVALID_HANDLE_VALUE.

2007-02-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/heap.c:
	ntdll: Clear the DebugInfo field when a shared heap critical section is
	made global.

	* tools/widl/proxy.c:
	widl: Use the correct type offset when freeing proxy variables.

	* tools/widl/typegen.c:
	widl: Added support for iid_is conformance descriptors.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/proxy.c,
	  tools/widl/typegen.c:
	widl: size_is and length_is are expression lists now.

	* tools/widl/typegen.c:
	widl: Take array dimensions into account when computing buffer size.

	* tools/widl/typegen.c:
	widl: Add support for arrays of simple types in format strings.

	* tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Output correct alignments in type format strings.

2007-02-05  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winex11.drv/xfont.c:
	winex11.drv: Removed dead code (Coverity).

	* dlls/riched20/row.c:
	riched20: Fixed wrong condition (Coverity).

	* programs/oleview/typelib.c:
	oleview: Removed dead code (Coverity).

2007-02-06  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/msvcrt/msvcrt.h, include/msvcrt/sys/stat.h, include/msvcrt/wchar.h:
	msvcrt: Align struct _stati64's st_size on an 8 byte boundary.

2007-02-06  Francois Gouget <fgouget@free.fr>

	* dlls/ntdll/rtl.c:
	ntdll: Add a stub API documentation to make winapi_check happy.

	* dlls/hid/main.c, include/Makefile.in, include/ddk/hidsdi.h:
	hid: Add the hidsdi.h header.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_server.c, include/rpcdce.h,
	  tools/winapi/win32.api:
	rpcrt4: Improve the prototypes Win64 compatibility by replacing long with LONG.

	* tools/winapi/win32.api:
	inseng.dll: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	localspl: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	pstorec: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	gphoto2.ds: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	wtsapi: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	comctl32: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	hid: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	compstui: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	oleaut32: Update win32.api to fix the winapi_check warnings.

	* dlls/atl/atlwin.h:
	atl: Protect atlwin.h against multiple inclusions.

	* dlls/winspool.drv/tests/info.c:
	winspool.drv: Remove unneeded cast.

	* dlls/kernel32/tests/sync.c, dlls/winealsa.drv/dsoutput.c:
	Add missing '\n's in traces.

2007-02-06  Mike McCormack <mike@codeweavers.com>

	* tools/widl/parser.y:
	widl: Implement dispinterfaces derived from an interface.

	* dlls/ole32/tests/storage32.c:
	ole32: Add a few more tests for transacted storage.

	* dlls/msi/tests/iface.c:
	msi: Test the dispid for CreateRecord.

	* dlls/msi/msi.rc:
	msi: Add the generated typelib to the resources.

	* dlls/msi/table.c:
	msi: Factor out code to calculate column offsets.

	* dlls/msi/tests/package.c:
	msi: Add a test showing MsiGetProperty returns correct values.

2007-02-06  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/urlmon/urlmon_main.c:
	urlmon: Remove redundant const.

2007-02-05  Misha Koshelev <mk144210@bcm.tmc.edu>

	* dlls/msi/action.c:
	msi: InstallPackage check for UI level must not disregard flags.

2007-02-05  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wineps.drv/driver.c, dlls/wineps.drv/escape.c,
	  dlls/wineps.drv/ppd.c:
	wineps.drv: Declare some functions static.

	* dlls/wineps.drv/mkagl.c:
	wineps.drv: Remove unused functions.

	* dlls/user32/message.c:
	user32: Remove unused function.

	* dlls/winemp3.acm/mpegl3.c:
	winemp3.acm: Remove unused functions.

	* dlls/shell32/shlexec.c:
	shell32: Remove unused function.

	* dlls/user32/sysparams.c:
	user32: Remove unused variables.

2007-02-05  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/browseui/Makefile.in, dlls/browseui/aclmulti.c,
	  dlls/browseui/browseui.h, dlls/browseui/browseui_main.c,
	  dlls/browseui/regsvr.c, dlls/browseui/tests/Makefile.in,
	  dlls/browseui/tests/autocomplete.c, programs/winetest/Makefile.in,
	  programs/winetest/winetest.rc:
	browseui: Implement and test ACLMulti.

	* dlls/browseui/browseui_main.c:
	browseui: Add class factory.

	* include/shlguid.h, include/shlobj.h:
	include: Add definitions for the multisource AutoComplete list (ACLMulti).

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/browseui/Makefile.in, dlls/browseui/browseui.spec,
	  dlls/browseui/browseui_main.c, dlls/browseui/regsvr.c,
	  dlls/browseui/version.rc, tools/wine.inf:
	browseui: Add the browseui DLL.

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

	* dlls/wininet/internet.h:
	wininet: Remove unused function.

2007-02-05  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linux.c:
	dinput: Use correct flag for object instance.
	DIDFT_AXIS is a generic mask for absolute and relative axes.

	* dlls/dinput/joystick_linux.c:
	dinput: Look for all available js* joystick devices.

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

	* dlls/secur32/ntlm.c:
	secur32: Fix ntlm_auth version number check when registering the NTLM SSP.

	* dlls/secur32/ntlm.c:
	secur32: Bump minimal required samba version to 3.0.25, 3.0.24 is a bugfix
	release.

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

	* dlls/iphlpapi/ipstats.c:
	iphlpapi: Avoid printf format warnings.

	* libs/port/interlocked.c:
	libwine_port: Implemented interlocked_cmpxchg64 for x86_64.

2007-02-02  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/kernel32/kernel32.spec, dlls/kernel32/tests/sync.c,
	  dlls/ntdll/ntdll.spec, dlls/ntdll/rtl.c:
	ntdll: Slist support.
	Implemented ntdll's RtlInitializeSListHead, RtlQueryDepthSList,
	RtlInterlockedFlushSList, RtlFirstEntrySList,
	RtlInterlockedPushEntrySList, RtlInterlockedPopEntrySList, their
	kernel32 equivalents, and tests.

	* include/wine/port.h, libs/port/interlocked.c:
	libwine_port: Added interlocked_cmpxchg64.

2007-01-31  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/tests/Makefile.in, dlls/wininet/tests/ftp.c:
	wininet/tests: Add ftp tests.

2007-01-31  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/mdi.c, dlls/user32/tests/msg.c, dlls/winex11.drv/winpos.c:
	user32: Add the tests for minimize/restore MDI child sequence, fix some failures.

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

	* libs/wine/c_20127.c, libs/wine/cpmap.pl:
	libwine: Hardcode the data for the US-ascii codepage instead of loading a
	unicode.org file.

2007-02-03  Misha Koshelev <mk144210@bcm.tmc.edu>

	* dlls/kernel32/tests/change.c:
	kernel32: Added conformance test for nested thread wakeups in the server.

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

	* server/thread.c:
	server: Clear the thread wait before releasing objects to avoid nested calls.
	Reported by Misha Koshelev.

	* include/winnt.h:
	winnt.h: Avoid warnings on Mac OS X.

2007-02-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winedos/devices.c, dlls/winedos/dosaspi.c, dlls/winedos/dosmem.c,
	  dlls/winedos/int09.c, dlls/winedos/int21.c, dlls/winedos/int31.c,
	  dlls/winedos/int67.c, dlls/winedos/interrupts.c,
	  dlls/winedos/soundblaster.c, dlls/winedos/vga.c, dlls/winedos/vga.h,
	  dlls/winedos/vxd.c:
	winedos: Declare some items static.

2007-02-01  John Klehm <xixsimplicityxix@gmail.com>

	* dlls/rasapi32/rasapi.c:
	rasapi32: RasEnumConnections now returns correct buffer size (zero) when there
	are zero connections available.

2007-01-31  John Klehm <xixsimplicityxix@gmail.com>

	* include/ras.h:
	ras.h: Added additional szDeviceType defines.

2007-01-29  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Use a helper thread instead of asynchronous callbacks.

	* dlls/winealsa.drv/alsa.c:
	winealsa: Cosmetic stuff.

	* dlls/winealsa.drv/Makefile.in, dlls/winealsa.drv/alsa.c,
	  dlls/winealsa.drv/alsa.h, dlls/winealsa.drv/audio.c,
	  dlls/winealsa.drv/dsoutput.c, dlls/winealsa.drv/wavein.c,
	  dlls/winealsa.drv/waveinit.c, dlls/winealsa.drv/waveout.c:
	winealsa: Split driver up in tiny pieces.

2007-02-04  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shlwapi/tests/string.c:
	shlwapi: Test string functions when buffer is too small.

2007-02-03  Felix Nawothnig <flexo@holycrap.org>

	* dlls/gdi32/path.c:
	gdi32: Fix offset calculation in PATH_ExtTextOut for >1 chars.

2007-02-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/font.c, dlls/gdi32/tests/font.c:
	gdi32: Make sure that we don't read/write beyond the provided buffer in
	GetOutlineTextMetricsA, add a test case.

2007-02-02  Anatoly Lyutin <vostok@etersoft.ru>

	* dlls/comdlg32/cdlg_Ru.rc:
	comdlg32: Update Russian translation.

2007-02-02  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linux.c, dlls/dinput/tests/joystick.c:
	dinput: Don't reset user specified range in SetDataFormat. With tests.

	* dlls/dinput/joystick_linuxinput.c, dlls/dinput/tests/joystick.c:
	dinput: Initialize user limits with the default 0..65535 range. Add tests.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Return user set limits not the device limits.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Don't close fd before we done with it.

2007-02-01  Marcus Meissner <meissner@suse.de>

	* dlls/kernel32/ne_module.c:
	kernel32: Initialize owner_exists (Coverity).

	* dlls/dinput/device.c:
	dinput: Fix dereference pointer after NULL check (Coverity).

	* dlls/devenum/devenum_main.c:
	devenum: Fix uninitialized clsidString (Coverity).

2007-01-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/win.c, dlls/winex11.drv/window.c:
	user32: Although Windows sends WM_GETMINMAXINFO at the window creation time,
	it doesn't use returned values to set window size.

2007-01-27  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Report D3D caps properly for ATI cards.

2007-01-26  Mike McCormack <mike@codeweavers.com>

	* include/winnt.h:
	winnt.h: Add defines for SLIST_HEADER.

2007-02-03  Bang Jun-Young <junyoung@mogua.com>

	* dlls/advpack/advpack.c, include/advpub.h:
	advpack: Constify the 3rd argument of RebootCheckOnInstall[AW].

2007-02-02  John Morris <mailjohnmorris@gmail.com>

	* dlls/ole32/ole32.spec:
	ole32: Add CoWaitForMultipleHandles to spec file.

2007-01-31  Detlef Riekenberg <wine.dev@web.de>

	* dlls/mshtml/Makefile.in:
	mshtml: Add a missing space.

2007-02-02  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Add test for XcvDataW,PortIsValid.

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Add test for XcvDataW,MonitorUI.

2007-02-03  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Declare variable signed to accept possible negative return value
	(Coverity).

	* dlls/wtsapi32/wtsapi32.c:
	wtsapi32: Declare a variable static.

	* dlls/winmm/message16.c:
	winmm: Declare a function static.

2007-02-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winemp3.acm/layer1.c, dlls/winemp3.acm/layer2.c,
	  dlls/winemp3.acm/layer3.c:
	winemp3.acm: Declare some items static.

	* dlls/quartz/pin.c:
	quartz: Fix a typo.
	Should fix Coverity CID-348 (dereference before NULL check).

2007-02-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/uxtheme/draw.c, dlls/uxtheme/msstyles.c, dlls/uxtheme/msstyles.h,
	  dlls/uxtheme/system.c:
	uxtheme: Declare some items static.

2007-01-31  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user32/comm16.c, dlls/user32/menu.c:
	user32: Declare some functions static.

2007-01-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw_main.c,
	  dlls/shdocvw/shlinstobj.c:
	shdocvw: Declare some functions static.

2007-02-05  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/dbghelp/dwarf.c:
	dbghelp: Turn a FIXME to a WARN in order to avoid mangling the output.

	* tools/winedump/lib.c:
	winedump: Add a sanity check before dumping long format library export.

2007-01-31  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/locale.c:
	kernel32: Add a trace to MultiByteToWideChar.

2007-02-05  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Fix lpBand->lpText memory leak in DeleteBand and simplify
	the code.

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Merge SetBandInfoA and SetBandInfoW.

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Merge GetBandInfoA and GetBandInfoW.

2007-02-04  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Merge InsertBandA and InsertBandW.

	* dlls/comctl32/rebar.c, dlls/comctl32/tests/Makefile.in,
	  dlls/comctl32/tests/rebar.c:
	comctl32: rebar: Add some tests for rebar and change the way the header size
	is fixed.

2007-02-03  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c, dlls/msi/tests/install.c:
	msi: Allow uncompressed files before compressed files in the same media.

2007-02-01  Huw Davies <huw@codeweavers.com>

	* dlls/wineps.drv/download.c:
	wineps.drv: Try to use the PostSript name of a font.

2007-01-30  Huw Davies <huw@codeweavers.com>

	* dlls/winspool.drv/info.c:
	winspool.drv: We don't need to check for the PPD Files key before using
	/etc/printcap.

	* dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Fix marshaling of VARTYPE-less safearrays.

2007-01-29  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msvcrt/tests/printf.c, dlls/msvcrt/wcs.c:
	msvcrt: Fix *printf() handling of negative field width.

2007-01-29  Bang Jun-Young <junyoung@mogua.com>

	* dlls/advapi32/registry.c, dlls/ntdll/reg.c, include/winternl.h:
	ntdll: Fix NtUnloadKey to match the DDK.

	* dlls/wininet/internet.h:
	wininet: config.h police.

	* dlls/advapi32/crypt.c, dlls/advapi32/crypt.h, include/wincrypt.h:
	advapi32: Fix prototypes to match the PSDK.

2007-01-28  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/avifil32/factory.c:
	avifil32: Declare some variables static.

2007-01-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/secur32/util.c:
	secur32: Declare a function static.

	* dlls/sensapi/sensapi.c:
	sensapi: Declare a variable static.

	* dlls/setupapi/setupx_main.c:
	setupapi: Declare some functions static.

	* dlls/sane.ds/sane_main.c:
	sane.ds: Declare a function static.

	* dlls/serialui/confdlg.c:
	serialui: Declare some items static.

2007-01-27  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/comctl32/tab.c:
	comctl32: Fix the TAB_ITEM_SIZE macro.

2007-01-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/spy.c:
	user32: Dump contents of CREATESTRUCT in WM_[NC]CREATE of the message spy.

	* dlls/gdi32/bitmap.c, dlls/gdi32/tests/bitmap.c:
	gdi32: CreateBitmap and friends should return stock DEFAULT_BITMAP if requested
	bitmap width or height is 0.

2007-01-26  Rob Shearman <rob@codeweavers.com>

	* dlls/credui/credui_main.c:
	credui: Fill out the username, password and domain edit boxes from the values
	input to CredUIPromptForCredentialsW.
	Set the focus to the password edit box, unless the user edit box is empty.

	* dlls/credui/credui.spec, dlls/credui/credui_main.c:
	credui: Implement CredUIParseUserName.

	* dlls/credui/credui_main.c:
	credui: Set the focus to the username edit control.

2007-01-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/umon.c:
	urlmon: Code clean up.

	* dlls/urlmon/session.c:
	urlmon: Call AddRef in CoInternetGetSession.

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: Don't unescape url in UrlCombineW with URL_FILE_USE_PATHURL flag.

2007-01-26  Francois Gouget <fgouget@free.fr>

	* dlls/shell32/shelllink.c:
	shell32: Remove an unneeded local variable initialization.

	* tools/winapi/winapi.pm:
	winapi_check: Print a warning when 'long' is used in an API file as this type
	is not Win64 compatible.

2007-01-26  Mike McCormack <mike@codeweavers.com>

	* programs/oleview/typelib.c:
	oleview: Remove many casts.

	* .gitignore, dlls/msi/Makefile.in, dlls/msi/msiserver.idl:
	msi: Add a (mostly empty) typelib for the MsiServer interface.

	* tools/widl/write_msft.c:
	widl: Handle TKIND_DISPATCH when generating MSFT typelibs.

2007-01-26  Alexandre Julliard <julliard@winehq.org>

	* Makefile.in:
	makefile: Use git-ls-files if possible to build tags files.

2007-01-26  Francois Gouget <fgouget@free.fr>

	* tools/winapi/winapi.pm:
	winapi_check: Print the line number when an error or warning is found in the
	API files.

	* include/mscat.h:
	wintrust: Add missing packing directives to mscat.h.

	* include/mscat.h:
	wintrust: Add missing prototypes and a missing include directive to mscat.h.

	* dlls/wintrust/register.c, include/wintrust.h, tools/winapi/win32.api:
	wintrust: Better match the PSDK types and fix the winapi_check warnings.

	* tools/winapi/win32.api:
	usp10: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	winecoreaudio.drv: Update win32.api to fix the winapi_check warnings.

2007-01-26  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/iface.c:
	msi: Add todos around tests that aren't being run yet, but will fail.

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

2007-01-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/winspool.drv/Makefile.in:
	winspool: Fix make rules for import library.

	* dlls/snmpapi/tests/util.c:
	snmpapi: Fix printf format warnings in tests.

2007-01-25  Mark Adams <mark@transgaming.com>

	* dlls/iphlpapi/ipstats.c:
	iphlpapi: Support for non-linux platforms, including Mac OS X.
	- Add error messages when unimplemented functions are called on
	non-linux platforms.
	- Implement retrieving the interface list on MacOS X (and other
	platforms that use NET_RT_DUMP).

	* dlls/iphlpapi/ifenum.c:
	iphlpapi: Filter out no-ip addresses when building ip address table.

	* dlls/iphlpapi/ifenum.c:
	iphlpapi: Clarify interface counting.

2007-01-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/cabinet/fdi.c:
	cabinet: Improve initialization of some arrays.

2007-01-25  Joris Huizer <joris_huizer@yahoo.com>

	* libs/wine/loader.c, libs/wine/mmap.c:
	libwine: sign-compare fixes.

2007-01-25  Francois Gouget <fgouget@free.fr>

	* dlls/snmpapi/main.c, include/snmp.h, tools/winapi/win32.api:
	snmpapi: Fix the winapi_check warnings.

2007-01-25  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/package.c:
	msi: Allocate a buffer in WCHARs not CHARs.

2007-01-25  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* server/window.c:
	wineserver: Validate the children of windows being hidden.
	Prevents paint_count values from being skewed when hiding windows.

2007-01-25  Huw Davies <huw@codeweavers.com>

	* tools/widl/write_msft.c:
	widl: Don't restrict the number of params of [prop*] functions.

2007-01-24  Huw Davies <huw@codeweavers.com>

	* tools/widl/write_msft.c:
	widl: Add VT_DATE support to typelib generation.

2007-01-26  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/proxy.c:
	widl: Make some generated variables static and/or const.

	* tools/widl/proxy.c:
	widl: Avoid dependency on COBJMACROS in generated code.

	* tools/widl/proxy.c:
	widl: Define __midl_proxy in the generated proxy code.

	* tools/widl/proxy.c:
	widl: Add a few more fields in the stub descriptor.

	* tools/widl/proxy.c:
	widl: Rename a couple of variables to make the code closer to what midl
	generates.

	* tools/widl/proxy.c:
	widl: Initialize local variables in stub functions.

	* tools/widl/proxy.c:
	widl: Use the typegen function for marshalling/unmarshalling in proxies.

	* tools/widl/typegen.c:
	widl: Copy the UserMarshal support into the generic code.

2007-01-25  Alexandre Julliard <julliard@winehq.org>

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

----------------------------------------------------------------
2007-01-24  Vitaliy Margolen <wine-patches@kievinfo.com>

	* server/token.c:
	server: Prevent a crash on error while creating a token.

	* dlls/advapi32/tests/security.c, server/handle.c:
	advapi32: Add more tests for granted access mask. Fix test on Wine.

	* dlls/ntdll/om.c, include/wine/server_protocol.h, server/handle.c,
	  server/protocol.def, server/request.h, server/trace.c:
	server/ntdll: Simplistic implementation of NtQueryObject(ObjectBasicInformation).

	* server/token.c:
	server: Reverse return value and status in token_access_check to be consistent.

	* dlls/advapi32/tests/security.c, server/token.c:
	advapi32: Add few more tests for token access check and fix it on Wine.

2007-01-25  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/qcap/dllsetup.c:
	qcap: Initialize a variable (Coverity).

2007-01-24  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/rsaenh/des.c, dlls/rsaenh/handle.c, dlls/rsaenh/handle.h,
	  dlls/rsaenh/rsa.c:
	rsaenh: Declare some functions static.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Declare some functions static.

2007-01-25  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h:
	rpcrt4: RPCRT4_strdupWtoA and RPCRT4_strdupAtoW don't change the input string,
	so make the input const.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Stash away NetworkOptions passed in from the binding string so that
	transports can look at the string if needed.

2007-01-25  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi_main.c:
	msi: Implement IDispatch->CreateInstance() for the msi server dll.

	* dlls/msi/msi_main.c:
	msi: Implement IClassFactory->QueryInterface() for the msi server dll.

	* dlls/msi/tests/Makefile.in, dlls/msi/tests/iface.c:
	msi: Add a test for the IMsiServer interface.

2007-01-25  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/comdlg32/cdlg_Ru.rc:
	comdlg32: Update Russian translation.

2007-01-25  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Create undos in StreamIn at the right times. Adds tests for when
	StreamIn should be undoable.

2007-01-24  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/reader.c:
	riched20: Remove excessive traces from reader.c.

2007-01-24  Ken Thomases <ken@codeweavers.com>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Copy the GL extensions string because it may be freed.

2007-01-24  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/urlmon/tests/protocol.c:
	urlmon: Fix type of an empty string to avoid warning.

	* dlls/opengl32/wgl.c:
	opengl32: Remove redundant const.

2007-01-24  Felix Nawothnig <flexo@holycrap.org>

	* dlls/comctl32/imagelist.c:
	comctl32: Degrade ERR to WARN.

2007-01-24  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: The typelib version numbers should be written to the registry in hex.

2007-01-24  Francois Gouget <fgouget@free.fr>

	* tools/winapi/win32.api:
	sfc_os: Update win32.api to fix the winapi_check warnings.

	* dlls/sfc_os/sfc_os.c, include/sfc.h:
	sfc_os: Add a prototype for SfcIsKeyProtected().

	* dlls/mscoree/mscoree_main.c:
	mscoree: _CorValidateImage() is a WINAPI function.
	This fixes a winapi_check warning.

	* dlls/shell32/shell32_main.c:
	shell32: SHLoadNonloadedIconOverlayIdentifiers() is a WINAPI function.
	This fixes a winapi_check warning.

	* dlls/dbghelp/dbghelp.spec:
	dbghelp: Fix the spec file to better match the SymGetSymFromAddr64() prototype.
	This fixes a winapi_check warning.

	* dlls/snmpapi/main.c:
	snmpapi: Add a missing '\n' trace.

	* dlls/snmpapi/main.c, dlls/snmpapi/snmpapi.spec, include/snmp.h:
	snmpapi: SnmpUtilDbgPrint() is a vararg and not an stdcall function.

2007-01-24  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/typegen.c:
	widl: Add support for some simple pointer types.

	* tools/widl/typegen.c:
	widl: Store the interface id in _StubMsg.MaxCount for iid_is pointers.

	* tools/widl/typegen.c:
	widl: Fix alignment check for struct members format string.

	* tools/widl/typegen.c:
	widl: Fix possible crash in write_array_tfs.

	* tools/widl/typegen.c:
	widl: Skip local functions when building format strings.

	* tools/widl/server.c, tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Export a function to compute the proc format string size for a function.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Move initialization of the stub buffer size into
	write_remoting_arguments().

	* tools/widl/server.c, tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Move support for stub arguments to typegen.c to make it usable for
	proxies too.

	* .gitignore, include/.gitignore, include/Makefile.in,
	  tools/make_makefiles:
	include: Simplify the variable declarations in the makefile to allow
	make_makefiles to parse it.

2007-01-24  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Fix off-by-one error in converting the password to unicode.

2007-01-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/debugtools.c:
	ntdll: Properly handle embedded nulls in NTDLL_dbg_vprintf.

2007-01-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/bindprot.c, dlls/urlmon/tests/protocol.c:
	urlmon: Added BindProtocol's IInternetPriority implementation.

2007-01-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/riched20/paint.c, dlls/riched20/run.c, dlls/riched20/style.c,
	  dlls/riched20/undo.c:
	riched20: Declare some functions static.

	* dlls/quartz/parser.c:
	quartz: Declare a function static.

2007-01-23  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c:
	riched20: Use CharFromPos instead of FindPixelPos in LinkNotify so it accounts
	for scrolling.

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Implement EM_LIMITTEXT and some simple tests.

2007-01-24  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Fix off-by-one error when copying the password to the helper.
	This fixes NTLM authentication with Outlook2003.

2007-01-24  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: When copying quality of service, deep copy TransportCredentials
	structure too.
	Remove some no longer relevant fixmes.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Fix a typo in rpcrt4_conn_open_pipe.
	Fix a typo in rpcrt4_conn_open_pipe where the initial setting of dwFlags
	was done inside the switch statement instead of at the indented place of
	at the start of the block (thanks to Jan Zerebecki for noticing this bug).

2007-01-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/protocol.c:
	urlmon: Added CreateBinding test.

	* dlls/urlmon/bindprot.c:
	urlmon: Added beginning BindProtocol implementation.

	* dlls/urlmon/binding.c, dlls/urlmon/session.c, dlls/urlmon/urlmon_main.h:
	urlmon: Return CLSID from get_protocol_handler.

	* dlls/urlmon/bindprot.c:
	urlmon: Added IInternetProtocolSink interface to BindProtocol.

	* dlls/urlmon/bindprot.c:
	urlmon: Added IInternetPriority interface to BindProtocol.

	* dlls/urlmon/Makefile.in, dlls/urlmon/bindprot.c, dlls/urlmon/session.c,
	  dlls/urlmon/urlmon_main.h:
	urlmon: Added IInternetSession::CreateBinding beginning implementation.

2007-01-23  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/oleaut32/tests/typelib.c:
	oleaut32/tests: Cast-qual warning fixes.

	* dlls/ole32/tests/compobj.c:
	ole32/tests: Cast-qual warning fixes.

	* dlls/msxml3/tests/domdoc.c:
	msxml3/tests: Cast-qual warning fixes.

2007-01-23  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Implement NdrSimpleType{Marshall,Unmarshall}.

2007-01-23  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c:
	usp10: Document ScriptPlace and ScriptShape.

	* dlls/usp10/usp10.c:
	usp10: Move text metrics into the script cache. Start using accessor functions.

	* dlls/usp10/tests/usp10.c:
	usp10: Remove duplicate font selection code from the tests.

2007-01-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/cursoricon.c:
	user32: Do not use DIB APIs for bitmap bits in a device dependent format.

	* dlls/user32/cursoricon.c:
	user32: Using DIB APIs to convert a DDB to monochrome is wrong, do it
	differently.

2007-01-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/tests/tmarshal.idl,
	  dlls/oleaut32/tests/tmarshal.rc,
	  dlls/oleaut32/tests/tmarshal_dispids.h:
	oleaut32/tests: Fix the FSF address.

2007-01-17  Anatoly Lyutin <vostok@etersoft.ru>

	* programs/cmd/builtins.c:
	cmd: In function WCMD_goto() changed strcmp() to lstrcmpi().

	* programs/cmd/builtins.c:
	cmd: Remove incorrect return in WCMD_if().

2007-01-18  Anatoly Lyutin <vostok@etersoft.ru>

	* dlls/kernel32/console.c:
	kernel32: Add comment for  GetConsoleWindow.

2007-01-19  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/shell32/shellord.c, include/shlguid.h, include/shobjidl.idl:
	shell32: Implement the property sheet extension array functions.
	Implement the SHAddFromPropSheetExtArray, SHCreatePropSheetExtArray,
	SHReplaceFromPropSheetExtArray and SHDestroyPropSheetExtArray functions
	that are used to extend/replace property sheets by shell extensions.

2007-01-21  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/msvcrt/file.c:
	msvcrt: Fix the internal flag computation for _open_osfhandle.

2007-01-22  Alexandre Julliard <julliard@winehq.org>

	* .gitignore, dlls/oleaut32/tests/Makefile.in,
	  dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/tests/tmarshal.idl,
	  dlls/oleaut32/tests/tmarshal.rc,
	  dlls/oleaut32/tests/tmarshal_dispids.h:
	oleaut32/tests: Add tmarshal test.

2007-01-23  Alexandre Julliard <julliard@winehq.org>

	* tools/make_makefiles:
	make_makefiles: Ignore IDL_H_SRCS targets in all directories.

2007-01-22  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/wineconsole/wineconsole_Ko.rc:
	wineconsole: Updated Korean resource .

2007-01-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/qcap/dllsetup.c, dlls/qcap/v4l.c:
	qcap: Declare some items static.

2007-01-22  Rob Shearman <rob@codeweavers.com>

	* .gitignore, dlls/credui/Makefile.in, dlls/credui/credui.rc,
	  dlls/credui/credui.spec, dlls/credui/credui_main.c,
	  dlls/credui/credui_resources.h:
	credui: Implement CredUIPromptForCredentialsW and CredUIConfirmCredentialsW.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/credui/Makefile.in, dlls/credui/credui.spec,
	  dlls/credui/credui_main.c:
	credui: Add stubbed out credui DLL.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Try to avoid partial named pipe read/writes by looping.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Make the fixme for an unhandled packet type more useful by printing
	the code of the unhandled packet type.

2007-01-22  Lei Zhang <thestig@google.com>

	* dlls/comctl32/tests/updown.c:
	comctl32: Fix the updown control test to use the optional flag.

2007-01-22  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/user32/mdi.c:
	user32: Only try to remove the MDI document icon from the frame menu when needed.

2007-01-22  Hans Leidekker <hans@it.vu.nl>

	* dlls/snmpapi/main.c, dlls/snmpapi/tests/util.c:
	snmpapi: Add tests for SnmpUtilVarBind{, List}{Cpy, Free}. Make them pass.

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/snmpapi/tests/Makefile.in, dlls/snmpapi/tests/util.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	snmpapi: Add a bunch of tests.

	* dlls/snmpapi/main.c, dlls/snmpapi/snmpapi.spec:
	snmpapi: Implement SnmpUtil{DbgPrint, IdsToA, OidToA, PrintAsnAny, PrintOid}.

2007-01-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/protocol.c, dlls/mshtml/tests/protocol.c:
	mshtml: Fixed protocol tests on IE7.

2007-01-22  H. Verbeet <hverbeet@gmail.com>

	* include/wine/wined3d_interface.h:
	wined3d: Remove some unused methods from the IWineD3DVertexShader interface.

	* dlls/wined3d/wined3d_private.h:
	wined3d: Remove the d3d9types.h include from wined3d_private.h.

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Use ARB_VERTEX_PROGRAM instead of GL_VERTEX_PROGRAM_ARB with GL_SUPPORT.
	Spotted by Marcus Meissner.

2007-01-22  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/comctl32/tests/header.c:
	comctl32/tests: Cast-qual warning fixes.

2007-01-22  Francois Gouget <fgouget@free.fr>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Fix compilation on systems that don't support nameless structs
	(e.g. gcc 2.95).

2007-01-22  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y,
	  tools/widl/typegen.c, tools/widl/widltypes.h,
	  tools/widl/write_msft.c:
	widl: Convert expression lists to standard Wine lists.
	Add a specific type for array dimensions.

	* tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/parser.y, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/typegen.c, tools/widl/widltypes.h,
	  tools/widl/write_msft.c:
	widl: Convert variable lists to standard Wine lists.

	* tools/widl/client.c, tools/widl/header.c, tools/widl/parser.y,
	  tools/widl/proxy.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: Convert function lists to standard Wine lists.

	* tools/widl/client.c, tools/widl/parser.y, tools/widl/proxy.c,
	  tools/widl/server.c, tools/widl/typegen.c, tools/widl/typegen.h,
	  tools/widl/widl.h, tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: Convert interface lists to standard Wine lists.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y,
	  tools/widl/proxy.c, tools/widl/typegen.c, tools/widl/typelib.c,
	  tools/widl/typelib.h, tools/widl/widltypes.h,
	  tools/widl/write_msft.c:
	widl: Convert attribute lists to standard Wine lists.

	* tools/widl/typelib.c, tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: Convert typelib lists to standard Wine lists.

	* tools/widl/write_msft.c:
	widl: Use existing functions to retrieve attributes for typelibs.

2007-01-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/tests/bitmap.c:
	gdi32: Add a simple SelectObject test for bitmaps.

	* dlls/gdi32/dib.c, dlls/gdi32/tests/bitmap.c:
	gdi32: Add a GetDIBits test.

2007-01-20  Bang Jun-Young <junyoung@mogua.com>

	* dlls/wineoss.drv/audio.h:
	wineoss.drv: config.h police.

	* dlls/msxml3/factory.c, dlls/msxml3/msxml_private.h,
	  dlls/msxml3/parseerror.c, dlls/msxml3/regsvr.c:
	msxml3: config.h police.

	* dlls/advapi32/advapi.c:
	advapi32: Do not include unnecessary headers.

	* include/winbase.h:
	winbase.h: Cosmetic changes.

	* include/objbase.h:
	objbase.h: Fix typo in comment.

	* dlls/advpack/tests/files.c:
	advpack/tests: Fix typo.

2007-01-21  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/user32/user32.spec:
	user32: Define RealChildWindowFromPoint as a real stub.

2007-01-21  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/ntdll/sec.c:
	ntdll: Correct trace message stating NtAccessCheck is a stub.

	* dlls/ntdll/sec.c:
	ntdll: Don't change granted access mask on error.

2007-01-21  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Make fixme for PRINTER_ENUM_CONNECTIONS more silent.

2007-01-22  Hans Leidekker <hans@it.vu.nl>

	* dlls/snmpapi/main.c, dlls/snmpapi/snmpapi.spec:
	snmpapi: Implement SnmpUtilOid{Append, Cmp, NCmp}. Fix SnmpUtilOid{Cpy, Free}.

	* dlls/snmpapi/main.c, dlls/snmpapi/snmpapi.spec:
	snmpapi: Implement SnmpUtilOctets{Cmp,Cpy,Free,NCmp}.

	* dlls/snmpapi/main.c, dlls/snmpapi/snmpapi.spec:
	snmpapi: Implement SnmpUtilAsnAny{Cpy,Free}.

2007-01-22  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel32/kernel32.spec:
	kernel32: Forward EncodePointer and DecodePointer to their ntdll counterparts.

	* dlls/ntdll/ntdll.spec, dlls/ntdll/rtl.c:
	ntdll: Implement RtlDecodePointer and RtlEncodePointer.

2007-01-22  Alexandre Julliard <julliard@winehq.org>

	* include/wine/list.h:
	wine/list.h: Add list_count function. Make some parameters const.

	* dlls/dinput/effect_linuxinput.c, dlls/dinput/joystick_linux.c,
	  dlls/dinput/joystick_linuxinput.c:
	dinput: Undefine SW_MAX to avoid possible conflicts with winuser.h.

	* .gitignore, dlls/Makefile.in, dlls/sfc/Makefile.in,
	  dlls/sfc_os/Makefile.in:
	sfc: We need to import sfc_os for the forwards to work properly.

2007-01-21  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ntdll/om.c, dlls/ntdll/tests/om.c:
	ntdll: Extra check for ObjectAttributes (Coverity).

2007-01-20  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/qcap/pin.c:
	qcap: Fix a typo.

	* dlls/dmime/performance.c:
	dmime: Remove unused variable.

	* dlls/shlwapi/assoc.c:
	shlwapi: Uninitialized variable fix (Coverity).

	* dlls/oledlg/insobjdlg.c:
	oledlg: Declare a function static.

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h,
	  dlls/oleaut32/variant.c, dlls/oleaut32/variant.h:
	oleaut32: Declare some items static.

2007-01-20  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel32/tests/volume.c:
	kernel32/tests: GetVolumeNameForMountPoint not present before w2k.

	* dlls/kernel32/tests/virtual.c:
	kernel32/tests: VirtualAllocEx not present in Win95.

	* dlls/kernel32/tests/process.c:
	kernel32/tests: Fix a declaration and use skip for the message.

2007-01-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/tests/updown.c:
	comctl32: Fix the updown control test to pass under XP.

2007-01-20  Hans Leidekker <hans@it.vu.nl>

	* dlls/mlang/mlang.c:
	mlang: Implement IMultiLanguage::GetCodePageInfo.

2007-01-19  Vitaliy Margolen <wine-patches@kievinfo.com>

	* server/token.c:
	server: User correct user sid for the default_dacl.

2007-01-19  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/file.c, dlls/ntdll/file.c:
	kernel32: Handle the SECURITY_* flags passed into CreateFileW by filling out
	the SECURITY_QUALITY_OF_SERVICE structure and passing it to NtCreateFile.
	Print a fixme in NtCreateFile if the SECURITY_QUALITY_OF_SERVICE
	structure is specified, since it isn't handled yet.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Handle security quality of service flags relevant to the ncacn_np
	protocol.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Track the security quality of service settings for bindings and
	connections.

2007-01-19  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/comctl32/commctrl.c, include/commctrl.h:
	comctl32: Fix InitCommonControlsEx prototype.

2007-01-19  Alexandre Julliard <julliard@winehq.org>

	* tools/makedep.c, tools/widl/proxy.c:
	widl: Include objbase.h so that generated proxy file compiles on Wine.

	* include/rpc.h:
	rpc.h: Include excpt.h, and windef.h in Wine so that the header compiles.

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/widl.c, tools/widl/widl.h:
	widl: Generate proxy/client/server files when requested explicitly even if
	they are empty.

	* Make.rules.in:
	Make.rules: Pass all idl source files to makedep.

2007-01-18  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: The sincos instruction is valid for ps/vs 2.1 as well.

	* dlls/wined3d/glsl_shader.c:
	wined3d: gl_FragDepth is a float, so fixup the write mask.

	* dlls/wined3d/device.c:
	wined3d: Use SetupFullscreenWindow() to make the window fullscreen.

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/wined3d/device.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: Move SetupFullscreenWindow() and RestoreWindow() from IDirectDrawImpl
	to IWineD3DDeviceImpl.

	* dlls/wined3d/baseshader.c:
	wined3d: Use %s in trace.

2007-01-18  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/odbc32/proxyodbc.c:
	odbc32: Declare a function static.

	* dlls/ole32/classmoniker.c, dlls/ole32/errorinfo.c,
	  dlls/ole32/hglobalstream.c, dlls/ole32/itemmoniker.c,
	  dlls/ole32/memlockbytes.c:
	ole32: Declare some functions static.

2007-01-18  Vitaliy Margolen <wine-patches@kievinfo.com>

	* server/winstation.c:
	server: Add generic access mapping for winstation and desktop objects.

2007-01-18  Francois Gouget <fgouget@free.fr>

	* dlls/shell32/shell32_main.c, dlls/shell32/tests/shlfileop.c:
	shell32: Add proper support for SHGetFileInfo(SHGFI_ICONLOCATION |
	SHGFI_USEFILEATTRIBUTES).

	* dlls/shell32/tests/shlfileop.c:
	shell32/tests: Add some more SHGetFileInfo() tests.

2007-01-18  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/shell32/shellord.c, include/shlobj.h:
	shell32: Fix prototypes.
	Fix the SHAddFromPropSheetExtArray, SHCreatePropSheetExtArray,
	SHReplaceFromPropSheetExtArray and SHDestroyPropSheetExtArray function
	prototypes because they're now documented. Also add them to shlobj.h.

2007-01-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/cursoricon.c:
	user32: Some apps pass a color bitmap as a mask to CreateIconIndirect, convert
	it to b/w.

2007-01-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/sync.c, include/wine/server_protocol.h, server/protocol.def,
	  server/thread.c, server/trace.c:
	ntdll: Avoid inter-process APCs when called for the process itself.

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/virtual.c:
	ntdll: Get rid of the no longer used is_current_process function.

	* dlls/kernel32/tests/virtual.c, dlls/ntdll/sync.c, dlls/ntdll/virtual.c,
	  include/wine/server_protocol.h, server/protocol.def, server/thread.c,
	  server/trace.c:
	ntdll: Implementation of inter-process NtMapViewOfSection and
	NtUnmapViewOfSection.

	* dlls/kernel32/tests/thread.c, dlls/ntdll/sync.c, dlls/ntdll/thread.c,
	  include/wine/server_protocol.h, server/protocol.def, server/thread.c,
	  server/trace.c:
	ntdll: Implementation of inter-process RtlCreateUserThread.

	* dlls/kernel32/thread.c, dlls/ntdll/thread.c:
	ntdll: Abuse RtlCreateUserThread to call the thread function for CreateThread
	directly.

	* dlls/kernel32/kernel_main.c, dlls/ntdll/thread.c:
	ntdll: Move the LDT section to ntdll and make it an uninterruptible section.

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio.drv: Fix printf format warnings.

2007-01-18  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/listview.c, dlls/localspl/tests/localmon.c,
	  dlls/mapi32/tests/prop.c, dlls/odbccp32/odbccp32.c, dlls/ole32/rpc.c,
	  dlls/urlmon/mk.c, dlls/wined3d/state.c, dlls/winspool.drv/info.c,
	  include/wine/debug.h, tools/winapi/options.pm:
	Assorted spelling fixes.

	* dlls/comctl32/ipaddress.c, dlls/comctl32/propsheet.c,
	  dlls/comdlg32/filedlg.c, dlls/dmloader/loaderstream.c,
	  dlls/gdi32/mfdrv/init.c, dlls/gdi32/palette.c,
	  dlls/kernel32/lcformat.c, dlls/msacm32/driver.c, dlls/msi/action.c,
	  dlls/msvcrt/dir.c, dlls/msvcrt/file.c, dlls/msvfw32/mciwnd.c,
	  dlls/secur32/ntlm.c, dlls/shell32/shellpath.c,
	  dlls/shlwapi/ordinal.c, dlls/user32/dialog.c, dlls/user32/edit.c,
	  dlls/wineps.drv/ps.c, dlls/wininet/http.c, dlls/winmm/playsound.c,
	  programs/winemenubuilder/winemenubuilder.c,
	  programs/winhelp/hlpfile.c:
	Don't put single quotes around '%s' when using the debugstr_*() functions.

	* dlls/shell32/shlexec.c:
	shell32: There is no need to check strings for NULL when using debugstr_w().
	Also don't put single quotes around '%s' in that case.

	* dlls/winmm/tests/timer.c:
	winmm/tests: Use '%u' to print GetLastError().

	* dlls/winspool.drv/info.c:
	winspool.drv: Use '%u' to print GetLastError().

	* dlls/ntdll/tests/info.c:
	ntdll/tests: Use '%u' to print GetLastError().

	* dlls/mcicda/mcicda.c:
	mcicda: Use '%u' to print GetLastError().

	* dlls/secur32/secur32.c:
	secur32: Use '%u' to print GetLastError().

	* dlls/usp10/tests/usp10.c:
	usp10/tests: Use '%u' to print GetLastError().

	* dlls/localspl/localmon.c:
	localspl: Remove unneeded cast.

2007-01-18  Alexandre Julliard <julliard@winehq.org>

	* server/mach.c, server/ptrace.c:
	server: Print a trace when sending a signal to a thread.

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/server.c,
	  dlls/ntdll/thread.c:
	ntdll: Block async signals during process init and thread creation.

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/server.c, dlls/ntdll/signal_i386.c,
	  dlls/ntdll/signal_powerpc.c, dlls/ntdll/signal_sparc.c,
	  dlls/ntdll/signal_x86_64.c:
	ntdll: Make the server signal mask global.

	* dlls/ntdll/thread.c:
	ntdll: Avoid heap allocations during thread creation.

	* dlls/ntdll/server.c:
	ntdll: Make the fd cache section an uninterruptible section.

	* dlls/ntdll/om.c, include/wine/server_protocol.h, server/handle.c,
	  server/protocol.def, server/trace.c:
	ntdll: Fix NtDuplicateObject to only close the file descriptor if it's in the
	same process.

	* dlls/ntdll/file.c, dlls/ntdll/om.c, dlls/ntdll/server.c:
	ntdll: Avoid heap allocation in fd cache. Fixed a couple of races.

2007-01-17  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Calc more caps infos ahead and store it in JoystickImpl.

2007-01-17  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Give shader constants their own debug channel.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix a typo.

	* dlls/wined3d/state.c:
	wined3d: When switching color material, apply the material we were previously
	tracking.
	This fixes a regression introduced by 329670c7f129343ef0086f76b08a40d0fd5e3242.

	* dlls/wined3d/state.c:
	wined3d: Don't set Parm when isDiffuseSupplied is FALSE in state_colormat(),
	it isn't used anyway.

2007-01-17  Francois Gouget <fgouget@free.fr>

	* dlls/d3d9/tests/device.c, dlls/ddraw/utils.c, dlls/wined3d/utils.c,
	  include/d3d8types.h, include/d3d9types.h,
	  include/wine/wined3d_types.h:
	d3d: Fix the D3DFMT_XXX constant declarations.

2007-01-17  Francois Gouget <fgouget@codeweavers.com>

	* dlls/winspool.drv/info.c:
	winspool.drv: Reorder a couple of functions and remove the forward declarations.

	* include/wine/test.h:
	tests: The non-gcc case was missing a forward declaration for winetest_skip().

2007-01-17  Francois Gouget <fgouget@free.fr>

	* dlls/odbccp32/tests/misc.c:
	odbccp32/tests: Add missing '\n' to an ok() call.

2007-01-17  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio.drv: Print each 64-bit integer as two 32-bit integers.

2007-01-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/objsel/objsel.c:
	objsel: Declare a variable static.

2007-01-17  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Fix trace for WS_setsockopt to look closer to WS_getsockopt.

2007-01-17  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/regsvr.c:
	msi: Register IMsiServer.

	* dlls/user32/tests/win.c:
	user32: Add a test showing WM_GETTEXT doesn't crash with bad pointers.

	* dlls/user32/defwnd.c:
	user32: Add an exception handler around the WM_GETTEXT handler.

2007-01-16  Detlef Riekenberg <wine.dev@web.de>

	* dlls/sfc/sfc.spec, dlls/sfc/sfc_main.c:
	sfc: Forward SfcIsFileProtected to sfc_os.dll.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/sfc_os/Makefile.in, dlls/sfc_os/sfc_os.c,
	  dlls/sfc_os/sfc_os.spec:
	sfc_os: Add stub for sfc_os.dll.

2007-01-12  Joel Parker <jjk3@msstate.edu>

	* dlls/kernel32/ne_module.c, dlls/kernel32/relay16.c,
	  dlls/kernel32/selector.c, dlls/kernel32/thunk.c, dlls/msvcrt/cpp.c,
	  dlls/msvcrt/cppexcept.c, dlls/msvcrt/except.c, dlls/msvcrt/misc.c,
	  dlls/ntdll/loader.c, dlls/ntdll/relay.c, dlls/ntdll/resource.c,
	  dlls/ntdll/rtl.c, dlls/ntdll/signal_i386.c,
	  dlls/ntdll/signal_x86_64.c, dlls/ntdll/thread.c,
	  dlls/riched20/txtsrv.c, dlls/rpcrt4/ndr_stubless.c,
	  dlls/user32/winproc.c, libs/port/interlocked.c, libs/wine/port.c:
	Remove redundant semicolons for ANSI compatibility.

2007-01-12  Anatoly Lyutin <vostok@etersoft.ru>

	* programs/wineconsole/curses.c:
	wineconsole: Add support for non-latin symbols with curses.

2007-01-15  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: No longer check for value exceeding have(min|max) in map_axis.

2007-01-16  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Add a config for the axes.

2007-01-15  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Move the config for the buttons from the JoyDev into the JoystickImpl.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Use a struct ObjProps for the config of the device.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Rename 'axe' to 'axis'.

2007-01-17  Frank Richter <frank.richter@gmail.com>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Search for .gnu_debuglink file.

2007-01-16  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Fix HTTP_EncodeBasicAuth by passing an out buffer to the second set
	of character set conversion calls.

2007-01-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c:
	wined3d: Implement per stream offsets.

2007-01-16  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/device.c, dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_types.h:
	wined3d: Store the stream number in the strided structure.

	* dlls/wined3d/drawprim.c:
	wined3d: Improve drawStridedSlow a bit.

2007-01-17  Alasdair Sinclair <alasdairs@dsl.pipex.com>

	* dlls/msvcrt/scanf.h, dlls/msvcrt/tests/scanf.c:
	msvcrt: If we're at EOF in the buffer and we have pattern %n in format string
	we should not count the EOF in the total.

2007-01-16  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/netapi32/netapi32.c:
	netapi32: Declare a variable static.

2007-01-16  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/localmon.c, dlls/localspl/localspl_private.h:
	localspl: Implement PortIsValid for XcvDataPort.

	* dlls/localspl/localmon.c:
	localspl: Implement XcvDataPort.

2007-01-11  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/localmon.c, dlls/localspl/localspl_private.h:
	localspl: Implement XcvOpenPort and XcvClosePort.

2007-01-16  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Add test for XcvDataPort_PortIsValid.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Extend test for XcvDataPort_MonitorUI.

2007-01-16  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Fix the TB_SETBITMAPSIZE for width or height zero (with
	testcase).

2007-01-16  James Hawkins <truiken@gmail.com>

	* dlls/advapi32/tests/registry.c:
	advapi32: Add tests for RegQueryValue.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Initialize nrofnames to keep from freeing unused memory in the
	error case.

2007-01-15  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Add a glsl_src_param_t type, pass it to shader_glsl_add_src_param()
	instead of three separate character arrays.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Add a glsl_dst_param_t type, pass it to shader_glsl_add_dst_param()
	instead of three separate character arrays.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Simplify shader_glsl_get_write_mask().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Simplify shader_glsl_get_swizzle().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix pshader_glsl_tex() and pshader_glsl_texcoord().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	shader_glsl_callnz().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	shader_glsl_breakc().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	shader_glsl_ifc().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	shader_glsl_if().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	shader_glsl_rep().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	shader_glsl_loop().
	Fix the comment.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texm3x3vspec().
	Use shader_glsl_get_sample_function().
	Use the GLSL builtin reflect() function.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texm3x3spec().
	Use shader_glsl_get_sample_function().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texm3x3().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texm3x3tex().
	Use shader_glsl_get_sample_function().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texm3x2tex().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texm3x3pad().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texm3x2pad().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texm3x2depth().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texdp3().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texdp3tex().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite pshader_glsl_texreg2rgb to properly take the write mask
	into account.
	Use shader_glsl_get_sample_function() rather than having the instruction
	handler figure it out itself.
	Get rid of shader_glsl_add_dst_old().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Split out getting the sample function and coordinate mask from
	shader_glsl_sample().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texreg2gb().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texreg2ar.
	Use the correct source swizzle.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	shader_glsl_dst().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_rcp() to properly take the write mask into account.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_expp() to properly take the write mask into account.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_cnd() to properly take the write mask into account.
	Take the difference between ps 1.4 and earlier versions into account.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_cmp() to properly take the write mask into account.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_lrp() to properly take the write mask into account,
	use the GLSL mix instruction.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	shader_glsl_lit().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_mov() to properly take the write mask into account.
	In case of writing to an address register round the source.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite pshader_glsl_dp2add() to properly take the write mask into
	account.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_dot() to properly take the write mask into account.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_map2gl() to properly take the write mask into
	account.

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Give WINED3DSIO_CRS its own function, properly take the write mask
	into account.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Move WINED3DSIO_SGE & WINED3DSIO_SLT from shader_glsl_map2gl() to
	shader_glsl_compare() where they belong.
	Properly take the write mask into account

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_mad() to properly take the write mask into account.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_arith() to properly take the write mask into
	account.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_sincos() to properly take the write mask into
	account.
	The write mask can only be one of .x, .y, .xy

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	shader_glsl_get_register_name().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass a mask to shader_glsl_add_src_param().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rename shader_glsl_add_dst() to shader_glsl_add_dst_old(), add
	shader_glsl_append_dst().

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	05/49: wined3d: Only add line numbers for new lines in shader_addline().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fixup the write mask for gl_FogFragCoord and gl_PointSize.
	gl_FogFragCoord and gl_PointSize are floats rather than vec4s in GLSL,
	so they shouldn't have a destination swizzle, and the write mask we
	return should consist of only the first component.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Return the (binary) write mask from shader_glsl_add_dst_param().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Split shader_glsl_add_param() in shader_glsl_add_src_param() and
	shader_glsl_add_dst_param().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Add a comment about D3D write masks and GLSL destination swizzles.

2007-01-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/sync.c:
	ntdll: Added a missing chunk in the NtLockVirtualMemory support.
	Thanks to Rob Shearman for noticing this.

	* tools/wmc/utils.c:
	wmc: Use standard format for error messages.

	* dlls/msvcrt/locale.c, dlls/msvcrt/mbcs.c, dlls/msvcrt/msvcrt.h,
	  dlls/msvcrt/msvcrt.spec:
	msvcrt: Export various locale and codepage variables.

2007-01-15  Jonathan Ernst <jonathan@ernstfamily.ch>

	* .gitignore, dlls/kernel32/Makefile.in, dlls/kernel32/kernel.rc,
	  dlls/kernel32/nls/winerr_fra.mc:
	kernel: Beginning of French translation of error messages.

2007-01-16  Alexandre Julliard <julliard@winehq.org>

	* tools/wmc/lang.c:
	wmc: Added support for neutral languages.

2007-01-15  Hans Leidekker <hans@it.vu.nl>

	* dlls/snmpapi/main.c, dlls/snmpapi/snmpapi.spec:
	snmpapi: Implement SnmpUtilVarBindList{Cpy,Free}.

2007-01-15  Kai Blin <kai.blin@gmail.com>

	* tools/wineinstall:
	winetools: Fix installing on distributions without a root password.

2007-01-15  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/Makefile.in, dlls/dsound/tests/capture.c,
	  dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c,
	  dlls/dsound/tests/dsound.c, dlls/dsound/tests/dsound8.c,
	  dlls/dsound/tests/duplex.c, dlls/dsound/tests/propset.c:
	dsound: Fix tests for old versions of windows.

2007-01-15  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shell32/shellole.c:
	shell32: Remove unused variable.

	* dlls/msvcrt/cpp.c, dlls/msvcrt/cppexcept.h:
	msvcrt: Move static function from header into file where it is called.

2007-01-13  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/varformat.c, dlls/oleaut32/vartype.c:
	oleaut32: Remove unused items.

2007-01-15  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Fix tests for EnumPrinters when the spooler is off.

	* dlls/winspool.drv/info.c:
	winspool: More error checks for XcvDataW.

	* dlls/winspool.drv/info.c:
	winspool: Improve trace for ClosePrinter.

	* dlls/winspool.drv/info.c:
	winspool: Support xcv in AddPortW.

	* dlls/winspool.drv/info.c:
	winspool: Support xcv in DeletePortW.

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Use a more generic name for a variable.

2007-01-13  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Recalc the toolbar after a TB_SETIMAGELIST.

	* dlls/comctl32/listview.c:
	comctl32: listview: When shrinking the last column clear the now unused field.

	* dlls/comctl32/listview.c:
	comctl32: listview: A CDRF_SKIPDEFAULT for an item should skip the whole row.

2007-01-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c, include/wine/server_protocol.h,
	  server/protocol.def, server/thread.c, server/trace.c:
	ntdll: Implemented NtLockVirtualMemory and NtUnlockVirtualMemory.

2007-01-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/sync.c, dlls/ntdll/virtual.c, include/wine/server_protocol.h,
	  server/protocol.def, server/thread.c, server/trace.c:
	ntdll: Implementation of inter-process NtFlushVirtualMemory.

	* dlls/kernel32/tests/virtual.c, dlls/ntdll/sync.c, dlls/ntdll/virtual.c,
	  include/wine/server_protocol.h, server/protocol.def, server/thread.c,
	  server/trace.c:
	ntdll: Implementation of inter-process VirtualProtectEx.

	* dlls/kernel32/tests/virtual.c, dlls/ntdll/sync.c, dlls/ntdll/virtual.c,
	  include/wine/server_protocol.h, server/protocol.def, server/thread.c,
	  server/trace.c:
	ntdll: Implementation of inter-process VirtualQueryEx.

	* dlls/kernel32/tests/process.c, dlls/kernel32/tests/virtual.c,
	  dlls/ntdll/sync.c, dlls/ntdll/virtual.c:
	ntdll: Implementation of inter-process VirtualAllocEx and VirtualFreeEx.

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/sync.c, dlls/ntdll/thread.c,
	  include/wine/server_protocol.h, server/protocol.def, server/thread.c,
	  server/trace.c:
	server: Support queuing some APCs to a process instead of a thread.

	* dlls/ntdll/sync.c, include/wine/server_protocol.h, server/protocol.def,
	  server/request.h, server/thread.c, server/trace.c,
	  tools/make_requests:
	server: Added mechanism for returning results of APC calls.
	Defined APC_VIRTUAL_ALLOC and APC_VIRTUAL_FREE requests.

	* server/thread.c:
	server: Properly wake the waiting threads when an APC is cancelled.

	* dlls/kernel32/console.c:
	kernel32: Use the proper codepage for console functions.
	Based on a patch by Anatoly Lyutin.

2007-01-13  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/secur32/tests/schannel.c:
	secur32/tests: Fix compilation for older gcc versions (and MinGW).

	* dlls/mshtml/tests/htmldoc.c:
	mshtml/tests: Fix compilation for older gcc versions (and MinGW).

	* dlls/crypt32/tests/cert.c:
	crypt32/tests: Fix compilation for older gcc versions (and MinGW).

2007-01-13  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ntdll/thread.c:
	ntdll: Remove unused function.

	* dlls/msvcrt/except.c, dlls/msvcrt/exit.c:
	msvcrt: Declare some items static.

	* dlls/msxml3/attribute.c, dlls/msxml3/comment.c, dlls/msxml3/pi.c:
	msxml3: Remove unused functions.

2007-01-14  Hans Leidekker <hans@it.vu.nl>

	* dlls/snmpapi/main.c, dlls/snmpapi/snmpapi.spec:
	snmpapi: Implement SnmpUtilVarBindCpy.

	* dlls/snmpapi/main.c, dlls/snmpapi/snmpapi.spec:
	snmpapi: Implement SnmpUtilMem{Alloc,Free,ReAlloc}.

	* dlls/snmpapi/snmpapi.spec:
	snmpapi: Add some missing APIs to the spec file.

	* dlls/snmpapi/main.c, dlls/snmpapi/snmpapi.spec, include/snmp.h:
	snmpapi: Implement SnmpUtilOidCpy, SnmpUtilOidFree and SnmpUtilVarBindFree.

2007-01-15  Alexandre Julliard <julliard@winehq.org>

	* loader/Makefile.in:
	loader: Fix git-describe invocation to work with old git versions.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Replace some macros by functions to reduce code size and
	compile time.

2007-01-12  Anatoly Lyutin <vostok@etersoft.ru>

	* dlls/kernel32/locale.c:
	kernel32: Add details in description function MultiByteToWideChar and
	WideCharToMultiByte.

2007-01-14  Felix Nawothnig <flexo@holycrap.org>

	* dlls/kernel32/kernel32.spec, dlls/kernel32/lzexpand.c:
	kernel32: Forward CopyLZFile() to LZCopy() instead of wrapping it.

2007-01-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Removed unneeded code from rewrite of .gnu_link handling.

2007-01-14  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/mpr/wnet.c:
	mpr: Fix typo (Coverity).

2007-01-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/mdi.c:
	user32: Remove redundant visibility checks of a maximized MDI child, add an
	explanation why we do that.

2007-01-14  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/mdi.c:
	user32: Simplify some maximized MDI child checks.

	* dlls/user32/mdi.c:
	user32: Remove MDI_AugmentFrameMenu call from WM_MDICREATE handler.

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Fix the typos in the fullscreen state debug trace.

	* dlls/wined3d/device.c:
	wined3d: Do not play with WS_VISIBLE, this causes unwanted mapping/unmapping
	of the window.

2007-01-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/directx.c, dlls/wined3d/directx.c:
	wined3d, d3d9: Caps correction.

	* dlls/wined3d/device.c:
	wined3d: Do not force dynamic usage on transformed buffers.

	* dlls/wined3d/device.c, dlls/wined3d/vertexbuffer.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Better tracking of vertex buffer assignments.

	* dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: Do not free regularily locked surfaces.

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Revert "wined3d: Do not preload vertex buffers in unlock.".
	This reverts commit 6fb1869b98265a30a285c6f94a768934476a8c2a.

2007-01-15  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/mpr/mpr.rc, dlls/mpr/mpr_Pl.rc:
	mpr: Add Polish translation.

	* dlls/msi/msi.rc, dlls/msi/msi_Pl.rc:
	msi: Add Polish translation.

2007-01-13  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/cmdlgtst/Pl.rc, programs/cmdlgtst/cmdlgr.rc:
	cmdlgtst: Add Polish translation.

	* dlls/wininet/rsrc.rc, dlls/wininet/wininet_Pl.rc:
	wininet: Add Polish translation.

	* programs/wordpad/Pl.rc, programs/wordpad/rsrc.rc:
	wordpad: Add Polish translation.

2007-01-12  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Change HTTP_EncodeBase64 to operate on a series of bytes,  instead
	of text.
	Change HTTP_EncodeBasicAuth to convert the username and password into
	utf8 before base64 encoding.

	* dlls/wininet/http.c:
	wininet: HTTP_HttpQueryInfoW deals with bytes, not characters so update the
	callers that have this wrong assumption.

	* dlls/wininet/http.c:
	wininet: Allow a NULL value to be passed into HTTP_ProcessHeader
	instead of crashing so that when used with the replace flag it will
	delete an existing value.

2007-01-13  Jacek Caban <jacek@codeweavers.com>

	* dlls/itss/tests/protocol.c:
	itss: Added more protocol tests.

	* dlls/itss/storage.c:
	itss: Close chm file when destroying Storage.

	* dlls/itss/storage.c:
	itss: Return S_FALSE in IStream::Read if there is no more data to read.

	* dlls/urlmon/mk.c, dlls/urlmon/tests/protocol.c:
	urlmon: Added mk protocol implementation.

2007-01-12  Bill Medland <billmedland@shaw.ca>

	* dlls/odbccp32/odbccp32.c, dlls/odbccp32/tests/misc.c,
	  include/odbcinst.h:
	odbccp32: Implement SQLGet/SetConfigMode.

2007-01-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/tests/pipe.c, server/named_pipe.c:
	server: Set the specified in/out buffer sizes on named pipes using SO_SND/RCVBUF.

2007-01-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msrle32/msrle32.c:
	msrle32: Declare some functions static.

	* dlls/msi/action.c, dlls/msi/events.c:
	msi: Declare some functions static.

	* dlls/msi/registry.c, dlls/msi/table.c, dlls/msi/tokenize.c:
	msi: Remove unused variables.

2007-01-12  Bill Medland <billmedland@shaw.ca>

	* dlls/odbccp32/odbccp32.c:
	odbccp32: Remove A->W cross-call.

2007-01-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/crypt32/tests/cert.c:
	crypt32/tests: Cast-qual warning fixes.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml/tests: Cast-qual warning fix.

	* dlls/rpcrt4/tests/rpc.c:
	rpcrt4/tests: Cast-qual warning fixes.

	* dlls/secur32/tests/schannel.c:
	secur32/tests: Cast-qual warning fixes.

	* dlls/user32/tests/win.c:
	user32/tests: Cast-qual warning fixes.

	* dlls/oleaut32/tests/olefont.c:
	oleaut32/tests: Cast-qual warnings fixes.

2007-01-12  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c:
	usp10: Initialise the caller supplied ABC structure in ScriptPlace.
	Fixes a regression found by Lei Zhang.

2007-01-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/Makefile.in, dlls/urlmon/mk.c, dlls/urlmon/tests/protocol.c,
	  dlls/urlmon/urlmon_main.c, dlls/urlmon/urlmon_main.h:
	urlmon: Added mk protocol stub implementation.

	* dlls/urlmon/tests/url.c:
	urlmon: Code clean up.

2007-01-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/server.c, dlls/ntdll/virtual.c:
	ntdll: Make the virtual.c critical section uninterruptible by signals.
	Based on a patch by Thomas Kho.

	* dlls/ntdll/virtual.c:
	ntdll: Fix handling of 64-bit sizes in NtMapViewOfSection.

	* dlls/ntdll/virtual.c, include/wine/server_protocol.h, server/mapping.c,
	  server/protocol.def, server/trace.c:
	ntdll: Duplicate the mapping handle on the server side for NtMapViewOfSection.

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/virtual.c,
	  server/fd.c, server/file.c, server/file.h, server/process.c:
	ntdll: Moved the check for removable file in load_dll to the server.

2007-01-11  Francois Gouget <fgouget@codeweavers.com>

	* dlls/winex11.drv/xrandr.c:
	xrandr: Small X11DRV_XRandR_(Get|Set)CurrentMode() code optimisations.

2007-01-11  Bill Medland <billmedland@shaw.ca>

	* dlls/odbccp32/odbccp32.c:
	odbccp32: Implement SQLGetInstalledDrivers.

2007-01-11  Duane Clark <fpga@pacbell.net>

	* dlls/comctl32/treeview.c:
	treeview: Fix horizontal scrolling.

2007-01-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Avoid a NULL pointer dereference in UpdateTexture (Coverity).

	* dlls/wined3d/surface.c:
	wined3d: Do not perform a NULL check on riid (Coverity).

	* dlls/d3d9/device.c, dlls/d3d9/directx.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	d3d9: Implement IDirect3DDevice9::StretchRect.

2007-01-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ole32/tests/propvariant.c:
	ole32/tests: Cast-qual warnings fixes.

2007-01-11  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Fix crash undoing a paste.

2007-01-12  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/explorer/systray.c:
	explorer/systray: Some code cleanup.

2007-01-11  Francois Gouget <fgouget@codeweavers.com>

	* dlls/d3d8/tests/d3d8_main.c, dlls/d3d8/tests/device.c,
	  dlls/d3d8/tests/surface.c, dlls/d3d8/tests/texture.c,
	  dlls/d3d8/tests/volume.c:
	d3d8/tests: Warn that tests were skipped if we could not load d3d8.dll.
	But report a failed test if a mandatory function is missing from it.

	* dlls/d3d9/tests/device.c, dlls/d3d9/tests/shader.c,
	  dlls/d3d9/tests/stateblock.c, dlls/d3d9/tests/surface.c,
	  dlls/d3d9/tests/texture.c, dlls/d3d9/tests/vertexdeclaration.c,
	  dlls/d3d9/tests/volume.c:
	d3d9/tests: Warn that tests were skipped if we could not load d3d9.dll.
	But report a failed test if a mandatory function is missing from it.
	Also warn if the hardware capabilities force us to skip some tests.

	* include/wine/test.h:
	tests: Add skip(), a function to warn that tests were skipped due to limitations
	of the environment or missing dependencies.

2007-01-11  Francois Gouget <fgouget@free.fr>

	* dlls/dsound/tests/capture.c:
	dsound/tests: Replace some '#if 0's with 'if (0)'s.

	* dlls/dsound/tests/capture.c, dlls/dsound/tests/ds3d8.c,
	  dlls/dsound/tests/dsound8.c, dlls/dsound/tests/duplex.c,
	  dlls/dsound/tests/propset.c:
	dsound/tests: The tests link with dsound.dll so use GetModuleHandle() instead
	of LoadLibrary().

	* dlls/dsound/tests/capture.c:
	dsound/tests: Replace some '#if 0's with 'if (0)'s.

	* dlls/winmm/tests/capture.c, dlls/winmm/tests/wave.c:
	winmm/tests: Replace some '#if 0's with 'if (0)'s.
	Fix the code so it compiles without warnings.

2007-01-11  Ken Thomases <ken@codeweavers.com>

	* dlls/wined3d/query.c:
	wined3d: Do not block waiting for occlusion query result in GetData.

2007-01-11  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/errorinfo.c:
	ole32: Fix copied description and copyright statement for tests/errorinfo.c.

2007-01-11  Frank Richter <frank.richter@gmail.com>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Split gnu_debuglink handling into own function.

2007-01-11  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msacm32/internal.c:
	msacm32: Declare some variables static.

	* dlls/mshtml/nsembed.c:
	mshtml: Declare a variable static.

	* dlls/mpr/wnet.c:
	mpr: Declare a variable static.

	* dlls/msdmo/dmoreg.c:
	msdmo: Declare a function static.

	* dlls/itss/chm_lib.c:
	itss: Remove unused variable and associated dead code.

	* dlls/msadp32.acm/msadp32.c:
	msadp32.acm: Remove unused function.

	* dlls/msg711.acm/msg711.c:
	msg711.acm: Remove unused function.

2007-01-12  Detlef Riekenberg <wine.dev@web.de>

	* dlls/comdlg32/Makefile.in, dlls/comdlg32/filedlg.c,
	  dlls/comdlg32/filedlg16.c, dlls/comdlg32/filetitle.c:
	comdlg32: Move GetFileTitle(A/W/16) to filedlg.c, filedlg16.c.

2007-01-11  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Support Xcv for ConfigurePortW.

	* dlls/winspool.drv/info.c:
	winspool: Support monitors without a name.

2007-01-11  Alexandre Julliard <julliard@winehq.org>

	* loader/preloader.c:
	preloader: Added printf format checking and fix some formats.

	* loader/preloader.c:
	preloader: Remove reserved ranges that we failed to allocate.

2007-01-10  Bill Medland <billmedland@shaw.ca>

	* dlls/odbccp32/odbccp32.c, dlls/odbccp32/tests/misc.c:
	odbccp32: Implement SQLInstallerError(W).

2007-01-11  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel32/resource.c, dlls/kernel32/tests/resource.c:
	kernel32: Merge existing resources in EndUpdateResource.

	* dlls/kernel32/resource.c:
	kernel32: Split update_add_resource() into two functions.

	* dlls/kernel32/resource.c:
	kernel32: Create a simple abstraction for file mappings.

2007-01-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/text.c, dlls/user32/uitools.c:
	user32: Add a simple DrawState test, make it pass under Wine.

2007-01-11  James Hawkins <truiken@gmail.com>

	* dlls/mshtml/olecmd.c:
	mshtml: Use the correct variable in the FIXME.

	* dlls/winspool.drv/info.c:
	winspool.drv: Check for get_filename failure.

	* programs/winedbg/memory.c:
	winedbg: Check buffer for NULL before writing to it.

2007-01-11  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/riched20/caret.c, dlls/riched20/editor.c,
	  dlls/riched20/tests/editor.c, dlls/riched20/undo.c:
	riched20: Fix modification state for several operations.

2007-01-10  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/ole2.c:
	ole32: Add tests for the default handler.

	* dlls/ole32/errorinfo.c, dlls/ole32/tests/Makefile.in,
	  dlls/ole32/tests/errorinfo.c:
	ole32: Add tests for error info functions.
	Return E_INVALIDARG if dwReserved is not set to zero for both
	GetErrorInfo and SetErrorInfo.

2007-01-10  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device_private.h, dlls/dinput/joystick_linux.c,
	  dlls/dinput/joystick_linuxinput.c, dlls/dinput/keyboard.c,
	  dlls/dinput/mouse.c:
	dinput: Internal data format is not const anymore.

2007-01-09  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c:
	dinput: Don't copy no longer used user data format object array.

	* dlls/dinput/device.c, dlls/dinput/device_private.h:
	dinput: Use internal data format for object lookups.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: [joystick_linuxinput] Use correct offset to queue events.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: [joystick_linuxinput] Rewrite GetObjectInfo and EnumObjects on top of
	base class.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: [joystick_linuxinput] Copy and modify default data format.

	* dlls/dinput/joystick_linux.c:
	dinput: [joystick_linux] Use correct offset to queue events.

	* dlls/dinput/joystick_linux.c:
	dinput: [joystick_linux] Reuse the same properties array.

	* dlls/dinput/joystick_linux.c:
	dinput: [joystick_linux] Copy and modify default data format.
	Copy only what we have.

2007-01-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Print status of the hinting support in the debug log.

2007-01-11  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* programs/clock/Nl.rc:
	clock: Update Dutch resource.

2007-01-10  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/comdlg32/cdlg_Nl.rc:
	comdlg32: Update Dutch resources.

	* dlls/user32/resources/user32_Nl.rc:
	user32: Update Dutch resources.

2007-01-10  Francois Gouget <fgouget@free.fr>

	* dlls/rpcrt4/tests/ndr_marshall.c, include/rpcndr.h:
	rpcrt4: Give a proper name to some formerly reserved MIDL_STUB_MESSAGE fields.
	Define NTDDI_VERSION so we get definitions for the Reserved51_X fields with
	the PSDK.
	This fixes compilation of the ndr_marshall.c with the PSDK.

2007-01-10  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/netconnection.c:
	wininet: Don't try to read anything if 0 bytes are to be read.

2007-01-10  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/kernel32/resource.c:
	kernel32: Declare some functions static.

	* dlls/itss/chm_lib.c, dlls/itss/chm_lib.h:
	itss: Declare a function static.

	* dlls/imaadp32.acm/imaadp32.c:
	imaadp32.acm: Remove unused function.

2007-01-10  Harry McNally <harrymc@decisions-and-designs.com.au>

	* dlls/ntdll/time.c:
	ntdll: Add Western Australia Summer Time.

2007-01-10  Francois Gouget <fgouget@codeweavers.com>

	* tools/wine.inf:
	wine.inf: We cannot create fake dlls for 16bit libraries. So remove ddeml.dll.

2007-01-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: Remove dead NV_TEXTURE_SHADER code

	* dlls/wined3d/state.c:
	wined3d: Do not activate / deactivate texture dimensions twice.

	* dlls/wined3d/vertexbuffer.c:
	wined3d: D3D7 vertex buffers never change their declaration.

	* dlls/wined3d/state.c:
	wined3d: Fix a capital letter in a parameter name.

	* dlls/wined3d/state.c:
	wined3d: Add copyright statements to state.c.

	* dlls/wined3d/state.c:
	wined3d: Attempt to remove some tabs smuggled in by xcode.

	* dlls/wined3d/state.c:
	wined3d: Do not warn about unsupported point sizes if the default values are set.

	* dlls/wined3d/state.c:
	wined3d: Avoid false resultarg warnings.

	* dlls/ddraw/device.c:
	ddraw: Get some texture stage states from their equivalent sampler states.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Store the scissor rect in the stateblock.

	* dlls/wined3d/swapchain.c, dlls/wined3d/wined3d_private.h:
	wined3d: Count the framerate per swapchain, not globally.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c:
	wined3d: Move material applying to the state table.

	* dlls/wined3d/drawprim.c:
	wined3d: Remove the invymat from drawprim.c.

	* dlls/wined3d/drawprim.c:
	wined3d: Do not reset the material.

2007-01-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/exception.c, server/thread.c:
	server: Allow suspended threads to run system APCs.

	* dlls/ntdll/critsection.c:
	ntdll: Make sure that critical section waits are not interrupted.

	* dlls/ntdll/sync.c:
	ntdll: Only return STATUS_USER_APC from a wait if a real user APC has been run.
	Based on a patch by Thomas Kho.

	* dlls/ntdll/sync.c:
	ntdll: Compute the wait timeout only once in NTDLL_wait_for_multiple_objects.

	* dlls/Makefile.in, tools/make_makefiles:
	make_makefiles: Get rid of the rules for dll symlinks.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/wineoss.drv/Makefile.in, dlls/wineoss.drv/audio.c,
	  dlls/wineoss.drv/audio.h, dlls/wineoss.drv/dscapture.c,
	  dlls/wineoss.drv/dsrender.c, dlls/wineoss.drv/midi.c,
	  dlls/wineoss.drv/midipatch.c, dlls/wineoss.drv/mixer.c,
	  dlls/wineoss.drv/mmaux.c, dlls/wineoss.drv/oss.c,
	  dlls/wineoss.drv/oss.h, dlls/wineoss.drv/wineoss.drv.spec,
	  dlls/winmm/wineoss/Makefile.in, dlls/winmm/wineoss/audio.c,
	  dlls/winmm/wineoss/audio.h, dlls/winmm/wineoss/dscapture.c,
	  dlls/winmm/wineoss/dsrender.c, dlls/winmm/wineoss/midi.c,
	  dlls/winmm/wineoss/midipatch.c, dlls/winmm/wineoss/mixer.c,
	  dlls/winmm/wineoss/mmaux.c, dlls/winmm/wineoss/oss.c,
	  dlls/winmm/wineoss/oss.h, dlls/winmm/wineoss/wineoss.drv.spec:
	wineoss: Renamed the dlls/winmm/wineoss directory to dlls/wineoss.drv.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/winenas.drv/Makefile.in, dlls/winenas.drv/audio.c,
	  dlls/winenas.drv/nas.c, dlls/winenas.drv/nas.h,
	  dlls/winenas.drv/winenas.drv.spec, dlls/winmm/winenas/Makefile.in,
	  dlls/winmm/winenas/audio.c, dlls/winmm/winenas/nas.c,
	  dlls/winmm/winenas/nas.h, dlls/winmm/winenas/winenas.drv.spec:
	winenas: Renamed the dlls/winmm/winenas directory to dlls/winenas.drv.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/winejack.drv/Makefile.in, dlls/winejack.drv/audio.c,
	  dlls/winejack.drv/jack.c, dlls/winejack.drv/jack.h,
	  dlls/winejack.drv/winejack.drv.spec, dlls/winmm/winejack/Makefile.in,
	  dlls/winmm/winejack/audio.c, dlls/winmm/winejack/jack.c,
	  dlls/winmm/winejack/jack.h, dlls/winmm/winejack/winejack.drv.spec:
	winejack: Renamed the dlls/winmm/winejack directory to dlls/winejack.drv.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/wineesd.drv/Makefile.in, dlls/wineesd.drv/audio.c,
	  dlls/wineesd.drv/esound.c, dlls/wineesd.drv/esound.h,
	  dlls/wineesd.drv/wineesd.drv.spec, dlls/winmm/wineesd/Makefile.in,
	  dlls/winmm/wineesd/audio.c, dlls/winmm/wineesd/esound.c,
	  dlls/winmm/wineesd/esound.h, dlls/winmm/wineesd/wineesd.drv.spec:
	wineesd: Renamed the dlls/winmm/wineesd directory to dlls/wineesd.drv.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/winecoreaudio.drv/Makefile.in, dlls/winecoreaudio.drv/audio.c,
	  dlls/winecoreaudio.drv/audiounit.c,
	  dlls/winecoreaudio.drv/coreaudio.c,
	  dlls/winecoreaudio.drv/coreaudio.h,
	  dlls/winecoreaudio.drv/winecoreaudio.drv.spec,
	  dlls/winmm/winecoreaudio/Makefile.in,
	  dlls/winmm/winecoreaudio/audio.c,
	  dlls/winmm/winecoreaudio/audiounit.c,
	  dlls/winmm/winecoreaudio/coreaudio.c,
	  dlls/winmm/winecoreaudio/coreaudio.h,
	  dlls/winmm/winecoreaudio/winecoreaudio.drv.spec:
	winecoreaudio: Renamed the dlls/winmm/winecoreaudio directory to
	dlls/winecoreaudio.drv.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/wineaudioio.drv/Makefile.in, dlls/wineaudioio.drv/audio.c,
	  dlls/wineaudioio.drv/audioio.c,
	  dlls/wineaudioio.drv/wineaudioio.drv.spec,
	  dlls/winmm/wineaudioio/Makefile.in, dlls/winmm/wineaudioio/audio.c,
	  dlls/winmm/wineaudioio/audioio.c,
	  dlls/winmm/wineaudioio/wineaudioio.drv.spec:
	wineaudioio: Renamed the dlls/winmm/wineaudioio directory to
	dlls/wineaudioio.drv.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/winearts.drv/Makefile.in, dlls/winearts.drv/arts.c,
	  dlls/winearts.drv/arts.h, dlls/winearts.drv/audio.c,
	  dlls/winearts.drv/winearts.drv.spec, dlls/winmm/winearts/Makefile.in,
	  dlls/winmm/winearts/arts.c, dlls/winmm/winearts/arts.h,
	  dlls/winmm/winearts/audio.c, dlls/winmm/winearts/winearts.drv.spec:
	winearts: Renamed the dlls/winmm/winearts directory to dlls/winearts.drv.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/winealsa.drv/Makefile.in, dlls/winealsa.drv/alsa.c,
	  dlls/winealsa.drv/alsa.h, dlls/winealsa.drv/audio.c,
	  dlls/winealsa.drv/midi.c, dlls/winealsa.drv/winealsa.drv.spec,
	  dlls/winmm/winealsa/Makefile.in, dlls/winmm/winealsa/alsa.c,
	  dlls/winmm/winealsa/alsa.h, dlls/winmm/winealsa/audio.c,
	  dlls/winmm/winealsa/midi.c, dlls/winmm/winealsa/winealsa.drv.spec:
	winealsa: Renamed the dlls/winmm/winealsa directory to dlls/winealsa.drv.

2007-01-09  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/cabinet/fdi.c, dlls/ddraw/ddraw.c, dlls/user32/misc.c,
	  dlls/wined3d/device.c, dlls/wined3d/state.c,
	  programs/winetest/main.c:
	janitorial: Use the C standard for multiline strings.

2007-01-10  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/wineconsole/wineconsole_De.rc,
	  programs/wineconsole/wineconsole_En.rc,
	  programs/wineconsole/wineconsole_Fr.rc,
	  programs/wineconsole/wineconsole_Ko.rc,
	  programs/wineconsole/wineconsole_No.rc,
	  programs/wineconsole/wineconsole_Pl.rc:
	wineconsole: Fix a typo in the help message about correct backend names.

	* programs/wineconsole/curses.c:
	wineconsole: Use CP_UNIXCP to translate strings to the system encoding.

	* programs/wineconsole/curses.c, programs/wineconsole/user.c,
	  programs/wineconsole/winecon_user.h:
	wineconsole: Make some data const.

2007-01-09  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c:
	dinput: Pass complete DataFormat structure to find_property.

	* dlls/dinput/keyboard.c:
	dinput: Remove duplicate Keyboard->Poll it is the same as base class.

	* dlls/dinput/mouse.c:
	dinput: Fix trace formatting.

2007-01-09  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/marshal.c:
	ole32: Fix the detection of when we need an additional QueryInterface in
	CoUnmarshalInterface.

	* dlls/ole32/tests/marshal.c:
	ole32: Add a test for the failure case of same-apartment unmarshaling when
	passing in an unsupported iid.

	* dlls/ole32/tests/compobj.c:
	ole32: Add tests for passing invalid arguments to CoUnmarshalInterface.

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: ReadClassStm should return STG_E_READFAULT is not all of the data could
	be read, not S_FALSE.
	Clear pclsid in case of errors.
	Add tests for ReadClassStm.

	* dlls/ole32/tests/compobj.c:
	ole32: Add tests for invalid arguments of CoMarshalInterface and
	CoMarshalInterThreadInterfaceInStream.

	* dlls/ole32/marshal.c:
	ole32: Return an error from CoUnmarshalInterface if pStream is NULL or if ppv
	is NULL.

	* dlls/ole32/storage32.c:
	ole32: Fix Read/WriteClassStm to return an error if the passed in stream
	pointer is NULL.

	* dlls/ole32/marshal.c:
	ole32: Return an error in CoMarshalInterface if pStream is NULL.

	* dlls/ole32/hglobalstream.c, dlls/ole32/tests/hglobalstream.c:
	ole32: Fix HGLOBALStreamImpl_CopyTo to check the return values of IStream_Read
	and IStream_Write and to not compare the bytes read to the bytes written.
	Add tests for IStream::CopyTo of the HGLOBAL stream implementation.

	* dlls/ole32/compobj.c, dlls/ole32/git.c, dlls/ole32/marshal.c,
	  dlls/ole32/rpc.c, dlls/ole32/stubmanager.c:
	ole32: Remove some unneeded inclusions of headers.
	Change some incorrect usages of SEEK_SET to the intended STREAM_SEEK_SET
	instead.

	* dlls/ole32/tests/compobj.c, dlls/ole32/tests/marshal.c:
	ole32: Move test for CoGetInterfaceAndReleaseStream to compobj.c.

	* dlls/ole32/git.c:
	ole32: Use the standard list functions for the global interface table
	implementation.

	* dlls/ole32/tests/marshal.c, dlls/ole32/tests/moniker.c:
	ole32: Move the Running Object Table test in marshal.c to moniker.c to put it
	with the other ROT tests.

	* dlls/ole32/rpc.c:
	ole32: Fix a comment in rpc_sendreceive_thread that wasn't correct.

	* dlls/ole32/compobj.c:
	ole32: Remove a FIXME comment that no longer applies.

2007-01-09  James Hawkins <truiken@gmail.com>

	* dlls/advpack/tests/advpack.c:
	advpack: Fill the output buffer to workaround a bug in IE7s advpack.

	* dlls/comctl32/tests/updown.c:
	comctl32: Rewrite the up-down control tests to add message checking.

2007-01-09  Eric Pouech <eric.pouech@wanadoo.fr>

	* tools/winedump/minidump.c:
	winedump: Fixed signature for dumping MDMP files.

2007-01-09  Bill Medland <billmedland@shaw.ca>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/odbccp32/tests/Makefile.in, dlls/odbccp32/tests/misc.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	odbccp32: Add tests structure.

2007-01-10  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/virtual.c:
	kernel32: Do not forget to cleanup if the test is skipped.

2007-01-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Force the fullscreen state update once the window is mapped.

2007-01-09  Francois Gouget <fgouget@codeweavers.com>

	* programs/uninstaller/Pt.rc:
	uninstaller: Add a Portuguese translation (contributed by Americo Jose Melo).

2007-01-09  Francois Gouget <fgouget@free.fr>

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c:
	wininet: Consistenly use INTERNET_SetLastError().

2007-01-09  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ntdll/tests/rtl.c:
	ntdll/tests: Skip some tests on Windows Vista.

2007-01-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/tests/exception.c:
	ntdll/tests: Fix exception test for CPUs that do segment limit checks
	differently.

	* dlls/ntdll/tests/port.c:
	ntdll/tests: Don't bother testing the port functions if creating the port failed.

2007-01-09  Alexandre Julliard <julliard@winehq.org>

	* tools/wrc/parser.l, tools/wrc/utils.c:
	wrc: Added support for utf-8 codepage.

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

----------------------------------------------------------------
2007-01-09  Alexandre Julliard <julliard@winehq.org>

	* LICENSE, include/wine/wine_common_ver.rc:
	Update copyright info for the new year.

2007-01-09  Francois Gouget <fgouget@free.fr>

	* dlls/shlwapi/tests/ordinal.c:
	shlwapi/tests: Print GetLastError() in decimal with '%u'.

	* dlls/wintrust/tests/register.c:
	wintrust/tests: Print GetLastError() in decimal with '%u'.

	* dlls/mcicda/mcicda.c:
	mcicda: Compare GetLastError() to kernel error codes, not ntdll ones.

2007-01-07  Hans Leidekker <hans@it.vu.nl>

	* dlls/kernel32/kernel32.spec, dlls/kernel32/tests/volume.c,
	  dlls/kernel32/volume.c:
	kernel32: Add a stub implementation for GetVolumeNameForVolumeMountPoint{A, W}.

2007-01-08  Samuel Lidén Borell <samuellb@bredband.net>

	* dlls/kernel32/kernel32.spec, dlls/kernel32/version.c:
	kernel32: Add SetTermsrvAppInstallMode stub.

2007-01-08  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel32/resource.c, dlls/kernel32/tests/resource.c:
	kernel32: Implement EndUpdateResource for the case existing resources are
	deleted.

2007-01-08  Patrik Stridvall <patrik@stridvall.se>

	* dlls/dxguid/dxguid.c, include/Makefile.in, include/rmxfguid.h:
	dxguid: Add the rmxfguid.h header and export the GUIDs.

	* .gitignore, tools/make_makefiles:
	make_makefiles: Add *_crosstest.exe to .gitignore.

2007-01-09  Felix Nawothnig <flexo@holycrap.org>

	* dlls/comctl32/tests/treeview.c, dlls/comctl32/treeview.c:
	treeview: Initialize iImage and iSelectedImage with zero.

2007-01-08  Ken Thomases <ken@codeweavers.com>

	* dlls/kernel32/locale.c:
	kernel32: Don't release preferred_locales until we're done with its members.

2007-01-09  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/avifil32/tmpfile.c, dlls/dmband/dmutils.c, dlls/dmime/dmutils.c,
	  dlls/dmloader/debug.c, dlls/dmstyle/dmutils.c,
	  dlls/dmusic/collection.c, dlls/dplayx/dplayx_messages.c,
	  dlls/kernel32/cpu.c, dlls/msrle32/msrle32.c, dlls/ntdll/tests/om.c,
	  dlls/user32/tests/msg.c, programs/oleview/oleview.c:
	janitorial: Remove stray '\' at end of lines.

	* dlls/wined3d/device.c:
	wined3d: Remove stray '\' at end of lines.

	* dlls/dsound/sound3d.c, dlls/dsound/tests/propset.c:
	dsound: Remove stray '\' at end of lines.

	* include/commctrl.h, include/softpub.h, include/wintrust.h:
	include: Remove stray '\' at end of lines.

2007-01-08  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dsound/sound3d.c:
	dsound: Remove unused function.

	* dlls/hhctrl.ocx/webbrowser.c:
	hhctrl.ocx: Remove unused variable.

	* dlls/gdi32/freetype.c:
	gdi32: Remove unused variables.

	* dlls/gdi32/mapping.c, dlls/gdi32/printdrv.c:
	gdi32: Declare some functions static.

	* dlls/gdi32/path.c:
	gdi32: Remove unused function.

2007-01-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ole32/tests/stg_prop.c:
	ole32/tests: Cast-qual warnings fixes.

2007-01-08  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Load the user interface dll on demand.

2007-01-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/dsound/propset.c:
	dsound: The dsconf.h GUIDs are now in libdxguid.

	* server/mapping.c:
	server: Don't fail to map a shared section if the final sector is truncated.

2007-01-08  Patrik Stridvall <patrik@stridvall.se>

	* dlls/dsound/tests/propset.c, dlls/dxguid/dxguid.c:
	dsound: The GUID:s defined in dsconf.h should be exported by dxguid.

	* dlls/imm32/imm.c:
	imm32: Only unregister the IME class if it was registered.

2007-01-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/virtual.c:
	kernel32/tests: Prevent memory leak.

2007-01-07  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Set event from queue_event, simplifying code a bit.

	* dlls/dinput/keyboard.c:
	dinput: Use proper offset when queuing keyboard events.

2007-01-06  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/winex11.drv/keyboard.c:
	winex11drv: Change FIXME to WARN in X11DRV_GetKeyNameText.

2007-01-06  Duane Clark <fpga@pacbell.net>

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	comctl32: listview: Allow LVIF_STATE flag in subitems.

2007-01-07  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/localspl/localspl.rc, dlls/localspl/spl_Fr.rc:
	localspl: Added French translation.

2007-01-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Fix np2 textures.

	* dlls/wined3d/drawprim.c, dlls/wined3d/vertexbuffer.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Do not try to read the vertex decl when the stateblock isn't finalized.

	* dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Remove some unneeded context cache members from the device.

	* dlls/wined3d/drawprim.c, dlls/wined3d/vertexbuffer.c:
	wined3d: Vertex buffers can use the declaration from the device.

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Do not preload vertex buffers in unlock.

	* dlls/wined3d/drawprim.c:
	wined3d: Clean up drawprim a bit.

	* dlls/ddraw/ddraw.c:
	ddraw: Forward the DDSCAPS2_TEXTUREMANAGE flag to wined3d.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c:
	wined3d: Do not keep internal references on index buffers.

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/device.c, dlls/ddraw/direct3d.c,
	  dlls/ddraw/vertexbuffer.c, dlls/wined3d/device.c,
	  dlls/wined3d/stateblock.c:
	wined3d: Do not keep internal references on vertex buffers.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c:
	wined3d: Do not keep internal references on pixel shaders.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c:
	wined3d: Do not keep internal references on vertex shaders.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c:
	wined3d: Do not keep internal references to the vertex declaration.

	* dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Do not activate vertex shaders needlessly.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Avoid negative draw start indices.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move applying shader constants to the state table.

	* dlls/wined3d/query.c:
	wined3d: Remove the general query fixme.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/state.c:
	wined3d: Apply shaders in their state handlers.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c:
	wined3d: Move debugging fixmes from drawprim to the stream source handler.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c:
	wined3d: Re-add the fixed function stream source trace.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move applying the gl stream sources to the state table.

2007-01-08  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/mdi.c:
	user32: Restore old WM_SIZE handler in mdi child.

	* dlls/kernel32/tests/file.c:
	kernel32: Print more information about the reason of a test failure.

	* dlls/kernel32/tests/file.c:
	kernel32: Fix the file sharing test to pass cleanly under XP and Win9x.

	* dlls/kernel32/tests/virtual.c:
	kernel32: Skip the VirtualAllocEx test under Win9x.

	* server/file.c, server/trace.c:
	server: Map ESPIPE to STATUS_ILLEGAL_FUNCTION for consistency with ntdll.

	* dlls/user32/tests/msg.c:
	user32: Add one more GetSystemMenu test.

2007-01-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/msg.c:
	user32: Make message tests pass cleanly under XP SP2.

2007-01-07  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Use Keep-Alive for HTTP requests if specified by the flags passed
	into HttpOpenRequest.

	* dlls/wininet/http.c:
	wininet: Fix the handling of Accept types passed into HttpOpenRequest
	by properly coalescing all the types into the Accept header value,
	rather than just adding the first.

	* dlls/wininet/http.c:
	wininet: Rename HTTP_Base64 to HTTP_EncodeBase64 to more accurately reflect
	what it does.

	* dlls/ole32/tests/clipboard.c:
	ole32: Fix the OLE clipboard test to call OleInitialize before performing the
	tests to fix test failures on Windows.

	* dlls/ole32/compobj_private.h, dlls/ole32/ole2.c:
	ole32: Add a field to the TLS data to determine whether OLE has been initialised
	for the current thread.

	* dlls/ole32/stg_stream.c:
	ole32: IPeristStream implies IPersist and IStream implies ISequentialStream
	so fix the Structured Storage stream implementation's QueryInterface with to
	reflect this.

	* dlls/ole32/hglobalstream.c:
	ole32: IStream inherits from ISequentialStream so the HGLOBALStream
	implementation must also support ISequentialStream.

	* dlls/ole32/tests/marshal.c:
	ole32: Release the global interface table in the tests when it is no longer
	needed.

2007-01-07  Kai Blin <kai.blin@gmail.com>

	* dlls/winmm/mci.c:
	winmm: Remove unused variable and if check (Coverity).

	* programs/taskmgr/graphctl.c:
	taskmgr: Remove unused variable and if check (Coverity).

2007-01-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dplayx/dplayx_global.c, dlls/dplayx/dplayx_global.h,
	  dlls/dplayx/dplobby.c, dlls/dplayx/name_server.c:
	dplayx: Declare some functions static.

	* dlls/dmstyle/dmutils.c, dlls/dmstyle/dmutils.h:
	dmstyle: Declare some functions static.

	* dlls/dnsapi/main.c, dlls/dnsapi/ns_name.c:
	dnsapi: Declare some items static.

2007-01-06  Francois Gouget <fgouget@free.fr>

	* dlls/mlang/tests/mlang.c:
	mlang/tests: Replace some '#if 0's with 'if (0)'s.

	* dlls/mshtml/tests/protocol.c:
	mshtml/tests: Replace some '#if 0's with 'if (0)'s.
	Fix the code so it compiles without warnings.

	* dlls/kernel32/tests/console.c, dlls/kernel32/tests/file.c,
	  dlls/kernel32/tests/path.c:
	kernel32/tests: Replace some '#if 0's with 'if (0)'s.
	Fix the code so it compiles without warnings.

	* dlls/gdi32/tests/font.c:
	gdi32/tests: Replace an '#if 0' with an 'if (0)'.

	* dlls/ntdll/tests/reg.c:
	ntdll/tests: Replace an '#if 0' with an 'if (0)'.
	Fix the code so it compiles without warnings.

	* dlls/d3d9/tests/surface.c:
	d3d9/tests: Replace some '#if 0's with 'if (0)'s.

	* dlls/crypt32/tests/encode.c:
	crypt32/tests: Replace some '#if 0's with 'if (0)'s.

	* dlls/gdi32/tests/dc.c:
	gdi32/tests: Tweak a test to avoid an '#if 0'.

	* dlls/urlmon/tests/url.c:
	urlmon/tests: Replace some '#if 0's with 'if (0)'s.
	Fix the code so it compiles without warnings.

	* dlls/rpcrt4/tests/cstub.c:
	rpcrt4/tests: Remove an unneeded '#if 0' and fix the code so it compiles
	without warnings.

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4/tests: Replace some '#if 0's with 'if (0)'s, or remove them if not
	needed anymore.
	Fix the code so it compiles without warnings.

	* dlls/oleaut32/tests/olepicture.c, dlls/oleaut32/tests/safearray.c,
	  dlls/oleaut32/tests/vartest.c, dlls/oleaut32/tests/vartype.c:
	oleaut32/tests: Replace some '#if 0's with 'if (0)'s.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Fix compilation on systems with no nameless unions (e.g. gcc
	2.95).

	* dlls/setupapi/tests/parser.c:
	setupapi/tests: Print GetLastError() in decimal with '%u'.

	* dlls/wininet/tests/http.c, dlls/wininet/tests/url.c:
	wininet/tests: Print GetLastError() in decimal with '%u'.

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: Replace some '#if 0's with 'if (0)'s.

	* dlls/shell32/shell32_main.c, dlls/shell32/tests/shlfileop.c:
	shell32/tests: Hack SHGetFileInfo() so it does not crash and add a test for it.

2007-01-06  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/process.c:
	kernel32: Skip the OpenProcess test under Win9x.

2007-01-06  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/device.c:
	d3d8: IDirect3DDevice8Impl_GetVertexShaderDeclaration gets passed a handle
	instead of a pointer.

	* dlls/d3d8/device.c:
	d3d8: IDirect3DDevice8Impl_GetVertexShaderFunction gets passed a handle instead
	of a pointer.

	* dlls/d3d8/device.c:
	d3d8: IDirect3DDevice8Impl_GetPixelShaderFunction gets passed a handle instead
	of a pointer.

2007-01-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/shlwapi/shlwapi.spec, dlls/shlwapi/tests/Makefile.in,
	  dlls/shlwapi/tests/clsid.c:
	shlwapi: Forward CLSIDFromProgIDWrap to ole32 (with test).

2007-01-06  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/shdoclc/Fr.rc:
	shdoclc: Update French translation.

	* programs/winecfg/Fr.rc:
	winecfg: Update French translation.

2007-01-06  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/devenum/devenum_main.c:
	devenum: Do not store full DLL path in the registry.

	* dlls/qcap/dllsetup.c, dlls/qcap/dllsetup.h, dlls/qcap/qcap_main.c:
	qcap: Do not store full DLL path in the registry.

2007-01-05  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Implement XcvDataW.

	* dlls/winspool.drv/info.c:
	winspool: Call the Portmonitor for XcvMonitor and XcvPort in OpenPrinter.

	* dlls/winspool.drv/info.c:
	winspool: Start support for XcvMonitor and XcvPort in OpenPrinter.

	* dlls/winspool.drv/info.c, dlls/winspool.drv/tests/info.c:
	winspool: Support the local computername as servername for OpenPrinter.

2007-01-04  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/user32/cursoricon.c, dlls/user32/driver.c,
	  dlls/user32/tests/input.c, dlls/user32/user_private.h,
	  dlls/winex11.drv/mouse.c, dlls/winex11.drv/winex11.drv.spec,
	  dlls/winex11.drv/x11drv.h, dlls/winex11.drv/x11drv_main.c:
	winex11drv/user32: Add ClipCursor to x11drv to pass clip rectangle to x11drv.

2007-01-05  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c:
	dinput: Fix possible NULL deference.

	* dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Fix memory leak.

	* dlls/dinput/device.c, dlls/dinput/device_private.h, dlls/dinput/mouse.c:
	dinput: Fix mouse to use proper offset when queuing new events. Add handling
	of X-buttons.
	We should use instance IDs instead of sequential numbers to get correct offset.

2007-01-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* include/wine/mscvpdb.h, tools/winedump/msc.c:
	winedump: Add support for derived types in codeview type info.

	* tools/winedump/debug.c, tools/winedump/msc.c, tools/winedump/pdb.c,
	  tools/winedump/winedump.h:
	winedump: Fix a couple of issues with types table walking.
	Align types to DWORD boundaries.
	Split types dumping functions into two versions (one without offsets
	table, the second one with offset table).

	* tools/winedump/msc.c:
	winedump: Dump S_SSEARCH_V1 symbols.

	* tools/winedump/debug.c:
	winedump: Added for dumping sstAlignSym and sstGlobalTypes COFF sections.

	* dlls/dbghelp/msc.c:
	dbghelp: Handling of S_SALIGN symbols.

	* tools/winedump/msc.c:
	winedump: Handling of S_SALIGN symbols.

	* include/wine/mscvpdb.h, tools/winedump/debug.c:
	winedump: Re-use existing codeview facilities to dump OMF files.

	* dlls/dbghelp/msc.c, include/wine/mscvpdb.h, tools/winedump/cvinclude.h,
	  tools/winedump/debug.c:
	winedump: Removed cvinclude.h.

	* tools/winedump/debug.c:
	winedump: Added dumping of RSDS header from module.

	* tools/winedump/dump.c, tools/winedump/lnk.c, tools/winedump/pdb.c,
	  tools/winedump/winedump.h:
	winedump: Added helper to convert a guid to a string.

	* tools/winedump/main.c, tools/winedump/ne.c,
	  tools/winedump/winedump.man.in:
	winedump: While dumping NE files, use -j option if present (as we do for
	PE files).

	* tools/winedump/Makefile.in, tools/winedump/dos.c, tools/winedump/dump.c,
	  tools/winedump/winedump.h:
	winedump: Print some basic info for pure DOS file (which fixes segfault while
	reading DOS files).

	* tools/winedump/debug.c:
	winedump: Added ability to dump FPO debug information.

2007-01-06  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Corrected the map/unmap operations for ELF sections.
	Now correctly free the mapped areas when no longer used.

2007-01-06  Kai Blin <kai.blin@gmail.com>

	* dlls/msacm32/driver.c:
	msacm32: Fix comment and remove unneeded if check (Coverity).
	Thanks to Alex Villacís Lasso for comments.

2007-01-05  Francois Gouget <fgouget@free.fr>

	* dlls/ole32/rpc.c:
	ole32: Print GetLastError() in decimal with '%u'.

	* dlls/gdi32/tests/gdiobj.c:
	gdi32/tests: Print GetLastError() in decimal with '%u'.

	* dlls/shell32/tests/shlfolder.c:
	shell32/tests: Print GetLastError() in decimal with '%u'.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Print GetLastError() in decimal with '%u'.

	* dlls/version/tests/info.c:
	version/tests: Print GetLastError() in decimal with '%u'.

2007-01-05  Francois Gouget <fgouget@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Self-register objsel.dll.

	* dlls/ddrawex/Makefile.in, dlls/ddrawex/main.c, dlls/ddrawex/regsvr.c,
	  tools/wine.inf:
	ddrawex: Self-register the DirectDrawFactory CoClass.

	* dlls/dinput8/Makefile.in, dlls/dinput8/dinput8_main.c,
	  dlls/dinput8/regsvr.c, tools/wine.inf:
	dinput8: Self-register the DirectInput8 CoClass.

2007-01-05  Francois Gouget <fgouget@free.fr>

	* programs/taskmgr/taskmgr.c:
	taskmgr: Print GetLastError() in decimal with '%u'.

	* dlls/advapi32/crypt.c:
	advapi32: Remove a useless macro.

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

	* dlls/shlwapi/reg.c:
	shlwapi: Remove redundant check in assignment, unicode version (Coverity).

	* dlls/user32/combo.c:
	user32: If pTest was allocated, length has to be > 0 (Coverity).

	* dlls/ole32/ole2.c:
	ole32: Remove redundant NULL check (Coverity).

2007-01-05  Jeff Latimer <lats@yless4u.com.au>

	* dlls/winemp3.acm/interface.c:
	winemp3.acm: Ensure null check before dereference.

	* dlls/wininet/utility.c:
	wininet: Ensure null check before dereference.

2007-01-05  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dmloader/debug.c, dlls/dmloader/debug.h:
	dmloader: Declare some functions static.

	* dlls/dmime/dmutils.c, dlls/dmime/dmutils.h:
	dmime: Declare some functions static.

2007-01-05  Francois Gouget <fgouget@free.fr>

	* dlls/quartz/memallocator.c, dlls/quartz/videorenderer.c:
	quartz: Use '%u' to print GetLastError().

	* dlls/urlmon/umon.c:
	urlmon: Print GetLastError() in decimal with '%u'.

	* dlls/qcap/v4l.c:
	qcap: Print GetLastError() in decimal with '%u'.

2007-01-05  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/lcformat.c, dlls/kernel32/tests/locale.c:
	kernel32: GetTimeFormat and GetDateFormat should fail if LOCALE_NOUSEROVERRIDE
	is specified simultaneously with a format string.

2007-01-04  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/winetest/main.c:
	winetest: Pass correct working directory to the tests.

2007-01-04  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/devenum/devenum.rc:
	devenum: Update Dutch resource.

	* dlls/comdlg32/cdlg_Nl.rc:
	comdlg32: Update Dutch resource.

2007-01-04  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/tests/device.c:
	dinput: Change EnumObjects to use GetObjectInfo.
	Also small debug trace correction to make it more readable.

2007-01-03  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/state.c:
	wined3d: state_pointsprite should apply to all texture units.

2007-01-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/imagehlp/access.c:
	imagehlp: Make use of the bReadOnly parameter in MapAndLoad.

	* dlls/imagehlp/access.c:
	imagehlp: Correctly handle files without NT headers in MapAndLoad.

	* dlls/imagehlp/access.c:
	imagehlp: Fixed computation of SizeOfImage in MapAndLoad.

2007-01-03  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/state.c:
	wined3d: Skip sampler state application for stages that aren't mapped to a
	texture unit.

	* dlls/wined3d/state.c:
	wined3d: Skip WINED3DTSS_TEXCOORDINDEX state application for stages that aren't
	mapped to a texture unit.

	* dlls/wined3d/state.c:
	wined3d: Don't do WINED3DTSS_ALPHAOP texture operations for stages that aren't
	mapped to a texture unit.

	* dlls/wined3d/state.c:
	wined3d: Don't do WINED3DTSS_COLOROP texture operations for stages that aren't
	mapped to a texture unit.

2007-01-04  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Fix the releasing of the wrong reference count in
	HTTP_CloseHTTPRequestHandle.
	lpwhr obviously already has a reference count of 0 because it is being destroyed.

	* dlls/wininet/http.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Change the HTTP code to not assume that the connection will be closed
	at the end of every request.

	* dlls/wininet/http.c:
	wininet: Don't send callbacks in HTTP_CloseConnection if not connected.

	* dlls/wininet/http.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use the Content-Length header to work out how much HTTP data there
	is left to be read
	and don't try to read any more than what is available.

	* dlls/wininet/http.c:
	wininet: Always send a Connection header set to "close" because that is what
	we expect for the moment.

	* dlls/wininet/ftp.c:
	wininet: Use correct types for socket functions to avoid warnings when compiling
	on BSD-based systems.

	* dlls/wininet/http.c:
	wininet: Fix HTTP redirects by reseting loop_next after one loop.

	* dlls/ntdll/threadpool.c:
	ntdll: Don't print a fixme in RtlQueueUserWorkItem if WT_EXECUTELONGFUNCTION
	is specified
	since that is what the current behaviour is tuned for.

2007-01-04  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Fix cut and paste error.

2007-01-04  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* tools/widl/write_msft.c:
	widl: Fix memory leaks.

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/utils.c:
	ddraw: Declare some functions static.

	* dlls/d3d9/directx.c:
	d3d9: Declare some functions static.

	* dlls/dmband/dmutils.c, dlls/dmband/dmutils.h:
	dmband: Declare some functions static.

2007-01-04  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Remove the custom thread pool implementation and use QueueUserWorkItem
	instead.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Pass WT_EXECUTELONGFUNCTION to QueueUserWorkItem since the
	function being called can sometimes take a long time to return and we
	almost always want a new thread to be created if there are no free
	threads available.

	* dlls/ntdll/tests/rtlstr.c:
	ntdll: Fix some test failures of RtlGUIDFromString and RtlStringFromGUID
	by setting the length correctly and by doing a case-insentive compare
	on the GUID string that is returned.

	* dlls/ntdll/rtlstr.c, dlls/ntdll/tests/rtlstr.c:
	ntdll: RtlInitUnicodeString on a string too long to fit in a UNICODE_STRING
	should set the it to have the maximum possible length and size rather
	than a modulus of the actual length.
	Fix test failures for RtlInitUnicodeString on Windows XP upwards.

	* dlls/ole32/rpc.c:
	ole32: Make sure to reset the message state if it has been changed in
	RPC_ExecuteCall before returning.
	Fix the hrFault parameter passed into the ClientNotify function in
	ClientRpcChannelBuffer_SendReceive so that it is correct in the case of
	messages dispatched with PostMessage.
	Only unmarshal ORPCTHAT for non-fault packets.

2007-01-04  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/mdi.c, dlls/user32/tests/msg.c, dlls/user32/win.c,
	  dlls/winex11.drv/window.c:
	user32: Fix some failures in the MDI message test.

	* dlls/user32/tests/msg.c:
	user32: Fix some failures of the ShowWindow test under Windows 2003.

2007-01-04  Kai Blin <kai.blin@gmail.com>

	* dlls/shlwapi/reg.c:
	shlwapi: Remove redundant check in assignment (Coverity).

2007-01-01  Michael Gardiner <mikegardiner@bigpond.com>

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Stop StgOpenStorage from creating a file when it does not already exist.

2007-01-04  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/listview.c:
	comctl32: Check subitem is valid before calling LISTVIEW_InvalidateSubItem().

	* dlls/comctl32/listview.c:
	comctl32: Remove unnecessary casts.

2007-01-04  Alexandre Julliard <julliard@winehq.org>

	* server/trace.c, tools/make_requests:
	make_requests: Grab status names from async_terminate calls too.

	* dlls/ntdll/sync.c, dlls/ntdll/thread.c, include/wine/server_protocol.h,
	  server/fd.c, server/named_pipe.c, server/protocol.def,
	  server/thread.c, server/thread.h, server/timer.c, server/trace.c,
	  tools/make_requests:
	server: Add a generic apc_call structure to make it easier to extend, and
	more type-safe.

	* dlls/ntdll/sync.c, include/wine/server_protocol.h, server/protocol.def,
	  server/thread.c, server/trace.c:
	server: Notify the server that an APC has completed in the next get_apc call.

	* server/thread.c:
	server: Make thread_apc into a real object.

2007-01-04  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* programs/regedit/Nl.rc:
	regedit: Update Dutch resources.

2007-01-04  Francois Gouget <fgouget@free.fr>

	* dlls/dinput/tests/device.c, dlls/mshtml/olecmd.c, dlls/wined3d/device.c,
	  dlls/wined3d/state.c:
	Assorted spelling fixes.

	* dlls/ws2_32/tests/sock.c:
	ws2_32/tests: Use '%d' to print GetLastError().

	* dlls/kernel32/tests/comm.c, dlls/kernel32/tests/module.c,
	  dlls/kernel32/tests/path.c, dlls/kernel32/tests/pipe.c,
	  dlls/kernel32/tests/time.c, dlls/kernel32/tests/virtual.c:
	kernel32/tests: Use '%d' to print GetLastError().

	* dlls/itss/protocol.c:
	itss: Fix spelling of the dwOrigin variables.

	* dlls/rsabase/tests/rsabase.c:
	rsabase/tests: Remove unneeded casts.

2007-01-02  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/module.c, include/dbghelp.h:
	dbghelp: Implemented 64 bit versions of EnumerateLoadedModules.

	* programs/winedbg/Makefile.in, programs/winedbg/dbg.y,
	  programs/winedbg/debug.l, programs/winedbg/debugger.h,
	  programs/winedbg/tgt_module.c:
	winedbg: Added a maintenance command to load a given module (for debug purposes).

2007-01-04  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Dirtify the stream sources in DrawPrimitiveUP.

	* dlls/wined3d/state.c:
	wined3d: Move decoding the streams to their own inline function.

	* dlls/wined3d/device.c:
	wined3d: Catch NOP SetStreamSource changes.

	* dlls/wined3d/device.c:
	wined3d: Catch nop pixel shader changes.

	* dlls/wined3d/device.c:
	wined3d: Catch NOP vertex declaration changes.

	* dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Break the viewport out of the vertex declaration state.

2007-01-03  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Implement mouse GetObjectInfo on top of base class.

	* dlls/dinput/keyboard.c:
	dinput: Move keyboard to using new GetObjectInfo.

	* dlls/dinput/device.c:
	dinput: Implement GetObjectInfo[A|W] in base device class.

2007-01-03  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel32/tests/resource.c:
	kernel32: Don't try update version resources with invalid data, as it fails
	on Windows 2003.

2007-01-04  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Fix piAttributes NULL crash.

2007-01-03  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ddraw/utils.c:
	ddraw: Declare some functions static.

	* dlls/comdlg32/cdlg32.c, dlls/comdlg32/filedlg.c,
	  dlls/comdlg32/fontdlg.c:
	comdlg32: Declare some items static.

	* dlls/dinput/joystick_linux.c, dlls/dinput/keyboard.c:
	dinput: Declare some functions static.

	* tools/winedump/pe.c:
	winedump: Fix memory leak.

2007-01-03  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/wininet/wininet_Nl.rc:
	wininet: Update Dutch resource.

	* dlls/mshtml/Nl.rc:
	mstml: Update Dutch resource.

2007-01-03  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c:
	usp10: Document ScriptItemize. Get rid of the remaining tabs.

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Implement and test ScriptStringGetOrder and ScriptString_pcOutChars.

	* dlls/usp10/usp10.c:
	usp10: Use macro functions for memory allocation and start checking for
	allocation failures.

	* dlls/usp10/usp10.c:
	usp10: Make the script cache accessible from a string analysis.

2007-01-03  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/tests/resource.c:
	kernel32: Be more verbose about the expected and received values for failures
	in the resource function tests.

	* dlls/ole32/ole2.c:
	ole32: Don't release pUnk in OleCreate if CoCreateInstance failed.

2007-01-04  Alexandre Julliard <julliard@winehq.org>

	* server/console.c:
	server: Avoid crash in alloc_console when the process has no parent.

2007-01-03  Thomas Kho <tkho@ucla.edu>

	* dlls/kernel32/tests/thread.c:
	kernel32: Add CreateRemoteThread remote thread conformance tests.

	* dlls/kernel32/tests/virtual.c:
	kernel32: Add VirtualAllocEx remote thread conformance tests.

2007-01-01  Reinhard Karcher <rkarcher@frey.de>

	* dlls/user32/comm16.c:
	user32: Speed improvement for 16bit comm support.
	The previous version of this patch wasn't applied correctly.

2006-12-30  Bernard Ladenthin <bernard@ladenthin.net>

	* dlls/oleaut32/oleaut.c, dlls/oleaut32/stubs.c:
	oleaut32: Better OleIconToCursor stub.

2007-01-01  Reinhard Karcher <rkarcher@frey.de>

	* server/serial.c:
	server: Fix 0 timeout handling for serial I/O.

	* dlls/user32/comm16.c:
	user32: Speed improvement for 16bit comm support.

	* dlls/ntdll/serial.c:
	ntdll: Fix DTR and CTS controls in serial code.

2007-01-03  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel32/resource.c, dlls/kernel32/tests/resource.c:
	kernel32: Store resources to be updated in a tree.

2007-01-02  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarImp.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarPow.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarMod.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarIdiv.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarXor.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarOr.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarSub.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarDiv.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarMul.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarAdd.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarAnd.

	* dlls/oleaut32/variant.c:
	oleaut32: Add wrapper for dereferencing a VARIANT of type VT_DISPATCH and
	returning the VARIANT value.

2007-01-02  Lei Zhang <thestig@google.com>

	* dlls/comctl32/tests/Makefile.in, dlls/comctl32/tests/status.c:
	comctl32: Add initial tests for the status bar control.

2006-12-25  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/comctl32/status.c:
	comctl32: statusbar: Fix GetRect return value bug.

2007-01-02  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c:
	wined3d: Select a proper texture unit in LockRect and dirtify the state.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: Remove d3ddevice_set_ortho.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c, dlls/wined3d/surface.c:
	wined3d: Move the projection matrix into its own state.

	* dlls/wined3d/state.c:
	wined3d: Break the lighting state out of the vertex decl.

	* dlls/wined3d/device.c, dlls/wined3d/state.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move the world matrix to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move the functionality of primitiveInitState to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add a viewport state to the state table.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move decoding the vertex declaration to the vertexshader state handler.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Pass the user pointer strided structure via the device implementation.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d9/device.c,
	  dlls/ddraw/device.c, dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Use the baseVertexIndex in the stateblock.

2007-01-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/shlwapi/thread.c:
	shlwapi: Use the appropriate constant for an uninitialized TLS check.

2007-01-02  Robert Reif <reif@earthlink.net>

	* dlls/dmusic/port.c:
	dmusic: Implement just enough of IDirectMusicPortImpl_GetFormat
	to keep Direct Sound from crashing from unitialized data.

2007-01-02  Christoph Bumiller <e0425955@stud3.tuwien.ac.at>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Sampler variables wrongly named 'shader'.

	* dlls/ddraw/device.c:
	ddraw: Fix the AddViewport thunk.

2007-01-02  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/rpc.c:
	ole32: Fix the calculation of message_state->prefix_data_len in two places
	where it would come out negative.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: A NULL IfSpec in RpcServerUnregisterIf should remove all interfaces,
	not crash.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fix _nroffuncs to return the correct number of functions by taking
	into account inherited interfaces.

2007-01-02  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/msvcrt/process.c:
	msvcrt: execl fix when no args are given (reported by Louis Lenders).

2007-01-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/locale.c:
	kernel32: Remove a line that was supposed to be deleted by the previous patch.

2007-01-02  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c:
	usp10: Document ScriptFreeCache, ScriptGetFontProperties, ScriptStringFree
	and ScriptGetCMap.

	* dlls/usp10/usp10.c:
	usp10: Downgrade some more FIXME's to TRACE's.

	* dlls/usp10/usp10.c:
	usp10: Implement ScriptStringValidate.

	* dlls/kernel32/kernel32.spec, dlls/kernel32/version.c:
	kernel32: Add a stub implementation for TermsrvAppInstallMode.

	* dlls/gdi32/font.c, include/wingdi.h:
	gdi32: Implement GetCharWidthI.

2007-01-01  Christoph Bumiller <e0425955@stud3.tuwien.ac.at>

	* dlls/wined3d/vertexbuffer.c:
	wineded3: dirtyend set to more than resource size.

2007-01-01  Nick Burns <adger44@hotmail.com>

	* dlls/wined3d/state.c:
	wined3d: Fix point handling.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Fix race condition in drvclose.

2007-01-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/comctl32/treeview.c, dlls/ddraw/main.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c:
	Use GetDC instead of CreateDC where possible.

	* tools/make_makefiles:
	make_makefiles: Properly skip dlls marked with MKDLL_SKIP.

	* dlls/gdi32/mfdrv/graphics.c, dlls/gdi32/mfdrv/metafiledrv.h,
	  dlls/gdi32/mfdrv/objects.c:
	gdi32: Avoid leaking a handle in MFDRV_ExtSelectClipRgn.

2007-01-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comdlg32/filedlg.c:
	comdlg32: Declare function static.

	* tools/wrc/readres.c:
	wrc: Declare some variables static const.

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

	* dlls/dnsapi/query.c:
	dnsapi: Fix entering the success case (Coverity).

	* dlls/imagehlp/access.c:
	imagehelp: Remove unused if() check in error path.

	* tools/wrc/translation.c:
	wrc: Fix comparison typo (Coverity).

2006-12-31  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/d3d8/tests/device.c, dlls/d3d8/tests/surface.c,
	  dlls/d3d8/tests/texture.c, dlls/d3d8/tests/volume.c:
	d3d8: Fix failing tests on windows, when no 3d hardware acceleration is
	available.

	* dlls/d3d9/tests/device.c, dlls/d3d9/tests/shader.c,
	  dlls/d3d9/tests/surface.c, dlls/d3d9/tests/texture.c,
	  dlls/d3d9/tests/vertexdeclaration.c, dlls/d3d9/tests/volume.c:
	d3d9: Fix failing tests on windows, when no 3d hardware acceleration is
	available.

2007-01-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	Revert "wined3d: Simplify the get_write_mask and get_swizzle functions."
	This reverts commit a9f658f6a68fbe53bcf30ab0329e5ff91451bf30.

2006-12-29  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/user32/cursoricon.c:
	user32: Initialize clip rectangle on first use.

	* dlls/wined3d/device.c:
	wined3d: Clip mouse after resolution change while creating default swap chain.

2006-12-30  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Qualify use of WINE_DEFAULT_DEBUG_CHANNEL.

	* dlls/msvcrt/cppexcept.c:
	msvcrt: Qualify use of WINE_DEFAULT_DEBUG_CHANNEL.

	* dlls/ntdll/relay.c:
	ntdll: Qualify use of WINE_DEFAULT_DEBUG_CHANNEL.

	* dlls/wnaspi32/winaspi16.c:
	wnaspi32: Qualify use of WINE_DEFAULT_DEBUG_CHANNEL.

2006-12-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dmband/band.c:
	dmband: Remove unused file-static variable.

2006-12-29  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Implement ScriptStringOut.

2006-12-28  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel32/resource.c, dlls/kernel32/tests/resource.c:
	kernel32: Remove incorrect and incomplete implementation of BeginResourceUpdate.

	* dlls/kernel32/tests/Makefile.in, dlls/kernel32/tests/resource.c:
	kernel32: Add a short test for Begin/EndUpdateResource.

2007-01-02  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add emtpy vertex declaration and related states to the state table.

	* dlls/wined3d/state.c:
	wined3d: Add stub handlers for world matrices 1-255.

	* dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h:
	wined3d: Put the decoded strided data structure into the device.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DTS_MODELVIEW to the state table.

2007-01-02  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_interface.h:
	wined3d: Remove IWineD3DDevice_ApplyStateChanges.

2007-01-01  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DTS_TEXTURETRANSFORMFLAGS to the state table.

2007-01-02  Alexandre Julliard <julliard@winehq.org>

	* loader/preloader.c:
	preloader: Reset both AT_SYSINFO and AT_SYSINFO_EHDR when one of them conflicts.

2007-01-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/font.c:
	gdi32: Remove redundant debug channel, use the default one instead.

2007-01-02  Jeff Latimer <lats@yless4u.com.au>

	* dlls/ntdll/file.c:
	ntdll: Remove an unnecessary NULL check.

2007-01-02  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel32/kernel32.spec, dlls/kernel32/path.c, include/winbase.h:
	kernel32: Implement CopyFileWithProgress.

2007-01-01  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Remove get_drawable.

	* programs/winecfg/Bg.rc, programs/winecfg/Cs.rc, programs/winecfg/De.rc,
	  programs/winecfg/En.rc, programs/winecfg/Es.rc,
	  programs/winecfg/Fi.rc, programs/winecfg/Fr.rc,
	  programs/winecfg/Hu.rc, programs/winecfg/It.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Pt.rc, programs/winecfg/Ru.rc,
	  programs/winecfg/Tr.rc, programs/winecfg/x11drvdlg.c:
	winecfg: Remove desktop double buffering option.

	* dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Remove desktop double buffering option.

2006-12-30  Reinhard Karcher <rkarcher@frey.de>

	* dlls/ntdll/directory.c:
	ntdll: Fix NtQueryDirectoryFile handling of short names on vfat filesystems.

2006-12-31  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/msg.c, dlls/winex11.drv/winpos.c:
	user32: Make more ShowWindow tests pass under Wine.

	* dlls/kernel32/tests/locale.c:
	kernel32: Make the locale test pass without errors under XP SP2.

	* dlls/ntdll/file.c:
	ntdll: Map ESPIPE to STATUS_ILLEGAL_FUNCTION.

2006-12-31  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/msi/tests/install.c:
	msi/tests: Remove test directory after the files have been deleted.

2006-12-30  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/thread.c:
	kernel32/tests: Run tests on NT4 again.

	* dlls/kernel32/tests/thread.c:
	kernel32/tests: Moved ok-statement to the appropriate place.

	* dlls/kernel32/tests/thread.c:
	kernel32/tests: Move USE_EXTENDED_PRIORITIES outside the if-statement.

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: Skip EnumPrintersW tests when not implemented.

2006-12-30  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Fix the regression caused by a previous change.

	* dlls/user32/tests/msg.c:
	user32: Update the ShowWindow test to pass cleanly under Windows 2000.

2007-01-01  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/Makedll.rules.in:
	configure: Use the correct ar tool when building Mingw import libraries.

	* aclocal.m4, configure.ac:
	configure: Added a generic macro for checking for Mingw programs.

2006-12-29  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/Makefile.in, dlls/ole32/tests/marshal.c:
	ole32: Add tests for channel hooks.

	* include/objbase.h:
	include: Add function declarations for CoAllowSetForegroundWindow and
	CoRegisterChannelHook to objbase.h.

2006-12-29  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Simplify the get_write_mask and get_swizzle functions.

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Cleanup & merge pshader_get_input_register_swizzle() and
	vshader_program_add_input_param_swizzle().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Cleanup shader_glsl_get_input_register_swizzle().

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Cleanup & merge pshader_get_write_mask() and
	vshader_program_add_output_param_swizzle().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Cleanup shader_glsl_get_output_register_swizzle().

	* dlls/wined3d/baseshader.c:
	wined3d: Remove dead code in shader_get_registers_used().
	As spotted by Christoph Bumiller, these branches are now never
	reached. Also, at least in the case of WINED3DSIO_TEXM3x3SPEC and
	WINED3DSIO_TEXM3x3VSPEC the old code was not quite correct, since we
	can lookup rather than guess the texture type these days.

2006-12-29  Frank Richter <frank.richter@gmail.com>

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	comctl32: listview: Fix getting user params and subitems.
	When querying a listview subitem for the user param, the main item's
	user param is returned. Also, when a subitem is custom-drawn, the main
	item's user param is passed along.

2006-12-29  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/winex11.drv/x11ddraw.c, dlls/winex11.drv/x11drv.h:
	winex11drv: Make dxgrab global.

2006-12-28  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/keyboard.c:
	dinput: Move keyboard to using new EnumObjects from base class.

2006-12-28  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c:
	usp10: Factor out script cache handling.

2006-12-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/server.c, server/Makefile.in, server/mach.c,
	  server/process.h, server/ptrace.c:
	server: Implement process control using Mach primitives for Mac OS.
	With help from Ken Thomases.

	* configure, configure.ac, include/config.h.in, loader/pthread.c:
	loader: Use the Mach thread port as thread id on Mac OS.

	* server/process.c, server/process.h, server/ptrace.c, server/request.c:
	server: Add hooks to support process tracing mechanisms other than ptrace.

	* server/ptrace.c, server/thread.c, server/thread.h:
	server: Split get_thread_from_pid to allow lookups by tid or pid only.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/winejoystick.drv/Makefile.in, dlls/winejoystick.drv/joystick.c,
	  dlls/winejoystick.drv/winejoystick.drv.spec, dlls/winmm/joystick.c,
	  dlls/winmm/joystick/Makefile.in, dlls/winmm/joystick/joystick.c,
	  dlls/winmm/joystick/joystick.drv.spec, programs/winecfg/libraries.c,
	  tools/winapi/win32.api:
	joystick.drv: Renamed the dlls/winmm/joystick directory to dlls/winejoystick.drv.

	* .gitignore, tools/make_makefiles:
	make_makefiles: List test directories explicitly in .gitignore.

	* .gitignore, tools/make_makefiles:
	make_makefiles: In .gitignore, explicitly list files that we know are generated
	instead of using wildcards.

	* Make.rules.in:
	Make.rules: Be more specific in make clean, only clean targets that we have
	created.

	* dlls/d3d9/tests/device.c:
	d3d9/tests: Avoid sizeof in traces.

	* dlls/d3d8/tests/device.c:
	d3d8/tests: Avoid sizeof in traces.

2006-12-28  Ken Thomases <ken@codeweavers.com>

	* dlls/winmm/winecoreaudio/audio.c, dlls/winmm/winecoreaudio/audiounit.c:
	winecoreaudio: Report actual supported input wave formats.
	Also, added some output formats that Core Audio ought to be able to handle.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Implement CoreAudio_wiAudioUnitIOProc, the input callback.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Implement widStart.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Implement widStop.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Changed widReset to stop the audio unit.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Add mechanism for cross-thread call of
	widHelper_NotifyCompletions.
	wodSendNotifyInputCompletionsMessage sends the kWaveInNotifyCompletionsMessage
	to the message thread, which calls widHelper_NotifyCompletions.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Add widHelper_NotifyCompletions.
	It scans for completed input wavehdrs, removes them from the queue,
	and notifies the application that they're done.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Store the device ID in the WINE_WAVEOUT structure.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Allocate/deallocate audio buffers in widOpen/widClose.

	* dlls/winmm/winecoreaudio/audio.c, dlls/winmm/winecoreaudio/audiounit.c:
	winecoreaudio: Do additional setup in AudioUnit_CreateInputUnit.
	It now returns in an output parameter the frame count that the AU will use.
	Also, initialize the Audio Unit.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Implement widDevInterfaceSize and widDevInterface.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Implement widReset.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Implement widAddBuffer.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Implement widOpen and widClose.

	* dlls/winmm/winecoreaudio/audiounit.c:
	winecoreaudio: Add AudioUnit_CreateInputUnit to create an input audio unit.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Add stub implementation of CoreAudio_wiAudioUnitIOProc.
	It will serve as the input callback called when our Audio Unit has sound
	data available.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Initial implementation of widGetDevCaps.

	* dlls/winmm/winecoreaudio/audio.c,
	  dlls/winmm/winecoreaudio/winecoreaudio.drv.spec:
	winecoreaudio: Initial stub implementation of audio input support.

2006-12-23  Chris Robinson <chris.kcat@gmail.com>

	* dlls/d3d8/device.c, dlls/d3d8/directx.c, dlls/d3d8/tests/device.c:
	d3d8: Don't report Shader Model 2.0 or higher.

2006-12-28  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add empty transform states to the state table.

	* dlls/wined3d/surface.c:
	wined3d: Do not setup states for unlocking if unlocking is disabled.

2006-12-28  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/sane.ds/ui.c:
	sane.ds: Qualify use of WINE_DEFAULT_DEBUG_CHANNEL.
	With grateful acknowledgement to Marcus Meissner.

2006-12-28  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c:
	opengl32: Fix wglGetProcAddress typo.

2006-12-28  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Release critical section before warping mouse.

2006-12-28  Colin Pitrat <colin.pitrat@bull.net>

	* dlls/msxml3/nodemap.c, dlls/msxml3/tests/domdoc.c:
	msxml: nextNode and reset functions.

2006-12-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/shdocvw/Makefile.in:
	shdocvw: IDL_TLB_SRCS should contain the source file, not the target.

	* dlls/wined3d/basetexture.c, dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	Revert "wined3d: Where possible, avoid using D3DCOLORTOGLFLOAT4."
	This reverts commit 045975b1f439049da9405a8defbad82a39710f49.

2006-12-23  Robert Reif <reif@earthlink.net>

	* tools/winedump/pe.c:
	winedump: Fix crash on delayed import section.

2006-12-28  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/moniker.c:
	ole32: Add some tests for the running object table.
	The tests show the behaviour when the IROTData interface is not
	available from the moniker. They also show the flags that are accepted
	into IRunningObjectTable::Register.

	* dlls/ole32/moniker.c:
	ole32: Contrary to MSDN, IROTData doesn't need to be implemented for a moniker
	to be usable with the running object table.
	If IROTData isn't available, fall back to a path that uses the display
	name and the clsid of the moniker to generate the comparison data.

	* dlls/ole32/moniker.c:
	ole32: Only call IROTData::GetComparisonData once, like native does.

	* dlls/ole32/moniker.c:
	ole32: Use IMoniker::GetTimeOfLastChange to attempt to retrieve the last-modified
	time for the ROT entry.
	However, fall back to CoFileTimeNow if it fails.

	* dlls/ole32/moniker.c:
	ole32: Use the reduced forms of monikers for comparison in the running object
	table.

	* dlls/ole32/compositemoniker.c:
	ole32: Execute Reduce using the moniker's vtable in CreateCompositeMoniker as
	the moniker isn't necessarily a composite moniker.

	* dlls/ole32/moniker.c:
	ole32: ROTFLAGS_REGISTRATIONKEEPSALIVE and ROTFLAGS_ALLOWANYCLIENT are legal
	to be used together in RunningObjectTable_Register.

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Add a simple test for XMLHTTP.

2006-12-27  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Move mouse to using new EnumObjects from base class.

	* dlls/dinput/device.c:
	dinput: Implement EnumOjects[A|W] in the base device class.

	* dlls/dinput/mouse.c:
	dinput: mouse: Copy and modify default data format.

	* dlls/dinput/keyboard.c:
	dinput: Remove MsgWaitForMultipleObjects calls.

2006-12-28  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.c:
	opengl32: Add OpenGL 2.1 support and more extensions.

	* dlls/opengl32/wgl.c:
	wgl: Fix wglGetProcAddress bug.

2006-12-27  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Fix wglGetPixelFormatAttribiv bug.

2006-12-28  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/baseshader.c:
	wined3d: Create samplers for all 1.x instructions that sample.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: The default debug channel for arb_program_shader.c & glsl_shader.c
	already is d3d_shader.

	* dlls/wined3d/device.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move set_glsl_shader_program() to glsl_shader.c.

	* dlls/wined3d/basetexture.c, dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Where possible, avoid using D3DCOLORTOGLFLOAT4.

2006-12-27  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/usp10/usp10.c:
	usp10: Downgrade fixme's to trace's with comments.

2006-12-27  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/safearray.c, dlls/oleaut32/tests/safearray.c:
	oleaut32: SafeArrayAllocData should succeed when cbElements is 0.

	* dlls/ole32/tests/clipboard.c:
	ole32: Output the HRESULT for clipboard tests that fail.

	* dlls/advapi32/tests/registry.c:
	advapi32: Change the test for the type parameter of RegQueryValueExA to only
	run on Win9x, since the value is set to a random value on NT.

2006-12-28  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Detect out of tree builds made from an unclean source tree.

	* .gitignore, dlls/.gitignore, programs/.gitignore,
	  programs/winetest/.gitignore, tools/make_makefiles:
	make_makefiles: Merge the generated gitignores in dlls and programs into the
	top-level one.

2006-12-27  Alexandre Julliard <julliard@winehq.org>

	* .gitignore, Makefile.in, dlls/.gitignore, loader/.gitignore,
	  loader/Makefile.in, programs/.gitignore, programs/Makefile.in,
	  programs/winedbg/.gitignore, server/.gitignore, tools/.gitignore,
	  tools/make_makefiles, tools/widl/.gitignore,
	  tools/winebuild/.gitignore, tools/winedump/.gitignore,
	  tools/winegcc/.gitignore, tools/wmc/.gitignore, tools/wrc/.gitignore:
	make_makefiles: Generate the top-level .gitignore file.
	Add a PROGRAMS variable in some makefiles to make things easier.

2006-12-27  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/rpc.c:
	ole32: Marshal the ORPCTHAT structure prefixed to the server data.
	Unmarshal the data on the client side (during
	ClientChannelBuffer_SendReceive) and call ClientNotify.

2006-12-27  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/comdlg32/tests/printdlg.c, dlls/ddraw/ddraw.c,
	  dlls/msvcrt/except.c, dlls/netapi32/tests/apibuf.c:
	janitorial: In multiline strings there is no need for '\' at the end of
	the lines.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: In multiline strings there is no need for '\' at the end of
	the lines.

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: In multiline strings there is no need for '\' at the end
	of the lines.

	* dlls/kernel32/tests/atom.c, dlls/kernel32/tests/codepage.c,
	  dlls/kernel32/tests/heap.c, dlls/kernel32/tests/path.c:
	kernel32/tests: In multiline strings there is no need for '\' at the end of
	the lines.

2006-12-27  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/marshal.c:
	ole32: Message filters aren't used in the test_call_from_message test, so
	remove the call to CoRegisterMessageFilter.

2006-12-26  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/user32/tests/input.c:
	user32: Silence tests in default debug level.

2006-12-26  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/cmd/builtins.c:
	cmd: Fix 'copy foo bar/' which gave access denied errors.

2006-12-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Fix failing test.

	* dlls/urlmon/tests/protocol.c:
	urlmon: Remove failing tests.

2006-12-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/wineps.drv/generic.ppd:
	wineps.drv: Remove surious null byte in generic.ppd.

	* dlls/atl/Makefile.in, dlls/atl/rsrc.rc, dlls/itss/Makefile.in,
	  dlls/itss/rsrc.rc, dlls/mshtml/Makefile.in, dlls/mshtml/rsrc.rc,
	  dlls/urlmon/Makefile.in, dlls/urlmon/rsrc.rc, tools/makedep.c:
	makedep: Add support for magic comments in .rc files so we can generate proper
	dependencies for them.

2006-12-24  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/tests/vartest.c, dlls/oleaut32/variant.c:
	oleaut32: Fix VarMod(VT_DECIMAL) test by properly initializing the DECIMAL
	to use.
	Fix Wine handling of VT_DECIMAL in VarMod.

2006-12-24  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Implement ScriptStringGetLogicalWidths.

2006-12-24  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Fix all failing tests on Windows and Wine.

	* dlls/usp10/usp10.c:
	usp10: Reduce multiple assignments to a single memset in ScriptItemize.

2006-12-24  Chris Robinson <chris.kcat@gmail.com>

	* dlls/d3d8/device.c, dlls/d3d8/tests/device.c, dlls/d3d9/device.c,
	  dlls/d3d9/tests/device.c, dlls/wined3d/device.c:
	d3d: GetStreamSource on a stream with NULL data isn't an error.

2006-12-24  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/comctl32/monthcal.c:
	comctl32: MonthCalendar - Fix highlighting of current date.

2006-12-25  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Skip NULL textures rather than non-NULL ones, assign -1 to skipped
	stages.
	Downgrade a FIXME to a WARN.

2006-12-25  Jacek Caban <jacek@codeweavers.com>

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/internet.h, dlls/wininet/utility.c:
	wininet: Get rid of ASYNC_FUNC enum.

	* dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPFINDNEXTW request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPRENAMEFILEW request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPREMOVEDIRECTORYW request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPDELETEFILEW request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPGETFILEW request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPOPENFILEW request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPGETCURRENTDIRECTORYW request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPFINDFIRSTFILEW request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPCREATEDIRECTORY request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPSETCURRENTDIRECTORY request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPUTFILE request.

	* dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in INTERNETREADFILEEXA request.

	* dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in INTERNETOPENURLW request.

	* dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Remove not used HTTPOPENREQUESTW request.

	* dlls/wininet/http.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in HTTPSENDREQUESTW request.

	* dlls/wininet/internet.c, dlls/wininet/internet.h,
	  dlls/wininet/utility.c:
	wininet: Use proc instead of enum in SENDCALLBACK request.

2006-12-25  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c:
	wined3d: Restore texture bindings in the FBO code.

	* dlls/wined3d/drawprim.c:
	wined3d: Copy the depth buffer after all dirty states are applied.

2006-12-25  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/state.c:
	wined3d: D3DRS_BLENDFACTOR should not influence glBlend(TRUE/FALSE).

	* dlls/wined3d/device.c:
	wined3d: Do not mark texture stages above MAX_TEXTURES dirty.

2006-12-25  Jacek Caban <jacek@codeweavers.com>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/itss/tests/Makefile.in, dlls/itss/tests/protocol.c,
	  dlls/itss/tests/rsrc.rc, programs/winetest/Makefile.in,
	  programs/winetest/winetest.rc:
	itss: Added test of protocol.

	* dlls/itss/Makefile.in, dlls/itss/protocol.c:
	itss: Added ITS protocol implementation.

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

2006-12-25  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/msg.c:
	user32: Check lParam of the HCBT_MINMAX hook message in ShowWindow tests.

	* dlls/msvcrt/main.c:
	msvcrt: Make an internal function static, avoid a prototype.

2006-12-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/.gitignore, dlls/atl/.gitignore, dlls/mshtml/.gitignore,
	  dlls/ole32/.gitignore, tools/make_makefiles:
	make_makefiles: Automatically add IDL header targets to the .gitignore file.

2006-12-24  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: Fix a failing test.

2006-12-23  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/wined3d_private.h:
	wined3d: Clarify OpenGL error codes.

2006-12-23  Patrik Stridvall <patrik@stridvall.se>

	* dlls/user32/class.c, dlls/user32/spy.c, dlls/user32/user_private.h:
	user32: Show the GCL{,P}_* constant names in debug messages.

	* dlls/secur32/ntlm.c:
	secur32: Use constants instead of hardcoded values.

2006-12-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/.gitignore, dlls/Makefile.in, dlls/make_dlls, tools/make_makefiles:
	dlls: Merged the make_dlls script into the global make_makefiles.

2006-12-23  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/tests/olepicture.c:
	oleaut32: Fix tests for redundant headers in OLEPicture load from IStream.

2006-12-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/itss/Makefile.in, dlls/itss/itss.c, dlls/itss/itsstor.h,
	  dlls/itss/protocol.c:
	itss: Added ITSProtocol stub implementation.

2006-12-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/itss/itss.c, dlls/itss/itsstor.h, dlls/itss/moniker.c,
	  dlls/itss/storage.c:
	itss: DllCanUnloadNow code clean up.

	* dlls/itss/Makefile.in, dlls/itss/itss.c, dlls/itss/itss.inf,
	  dlls/itss/regsvr.c, dlls/itss/rsrc.rc, include/wine/itss.idl:
	itss: Move registration code to inf file and add missing registry.

	* dlls/itss/itss.c, dlls/itss/regsvr.c, include/wine/itss.idl:
	itss: Rename CLSID_ITSProtocol to CLSID_MSITStore.
	ITSProtocol is a different object.

	* dlls/itss/itss.spec:
	itss: DllUnregisterServer is not a stub.

2006-12-23  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Implement ScriptString_pLogAttr.

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Match output of WinXP for ScriptGetProperties.

	* dlls/usp10/usp10.c:
	usp10: Improve the stub for ScriptBreak.

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c, dlls/usp10/usp10.spec,
	  include/usp10.h:
	usp10: Implement ScriptString_pSize.

2006-12-23  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Fix a crash when executing the VarAnd test with an old version
	of oleaut32.dll.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Fix the VarPow tests for older versions of oleaut32.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/rpc.c,
	  dlls/ole32/tests/marshal.c:
	ole32: Performing a COM call from within the processing of a sent message
	during a wait for completion of another COM call is not allowed.
	Add a test for the behaviour where RPC_E_CANTCALLOUT_ININPUTSYNCCALL is returned.

	* dlls/ole32/compobj.c:
	ole32: Call the MessagePending function for message filters.

	* dlls/ole32/compobj_private.h, dlls/ole32/rpc.c:
	ole32: Track the pending call count so that the correct call type can be passed
	to the message filter HandleInComingCall function.

	* dlls/ole32/oleproxy.c:
	ole32: Allow the marshaling/unmarshaling of NULL interfaces for IClassFactory.

2006-12-22  Duane Clark <fpga@pacbell.net>

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/msvcrt.spec, dlls/msvcrt/tests/string.c:
	msvcrt: Add function _mbsspnp.

2006-12-22  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/keyboard.c, dlls/dinput/mouse.c,
	  dlls/dinput/tests/keyboard.c, dlls/dinput/tests/mouse.c:
	dinput: AddRef and Release parent DirectInput class.

2006-12-22  Alexandre Julliard <julliard@winehq.org>

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

----------------------------------------------------------------
2006-12-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/msg.c, dlls/winex11.drv/winpos.c:
	user32: Add a message test for various ShowWindow() calls, fix some failures.

2006-12-18  James Hawkins <truiken@gmail.com>

	* dlls/mscoree/mscoree.spec, dlls/mscoree/mscoree_main.c:
	mscoree: Add a stub for GetCORSystemDirectory.

2006-12-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/loader.c:
	kernel32: Fix a typo.

2006-12-22  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/tests/info.c:
	winspoool/tests: Build the name of the local print server in a separate function.

	* dlls/winspool.drv/tests/info.c:
	winspoool/tests: Rename unclear string.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Rename unclear string.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Fix copy+paste typo.

2006-12-21  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c:
	mshtml: Improve loading document detection in AsyncOpen.

	* dlls/mshtml/nsio.c:
	mshtml: Use Gecko's AsyncOpen if URI is has no nsIWineURI interface.

2006-12-21  Huw Davies <huw@codeweavers.com>

	* configure, configure.ac, dlls/gdi32/Makefile.in, dlls/gdi32/freetype.c:
	gdi32: Extract the constituent TrueType files from Mac suitcase fonts into
	the user's caches directory
	and use these instead of the original suitcase.

2006-12-21  Francois Gouget <fgouget@codeweavers.com>

	* dlls/setupapi/install.c:
	setupapi: Fix handling of 'CopyFiles=@file'.

2006-12-21  Ken Thomases <ken@codeweavers.com>

	* dlls/iphlpapi/ifenum.c:
	iphlpapi: Fixed a problem with enumerating network interfaces.
	Keep increasing the buffer until the returned length is more than two
	records smaller than the buffer we provided.

2006-12-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/cdrom.c:
	ntdll: Added support for physically ejecting devices on Mac OS.

	* dlls/kernel32/tests/loader.c, dlls/ntdll/virtual.c, server/mapping.c:
	ntdll: File positions should be aligned to sector boundaries in PE loader.

2006-12-20  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/process.c:
	kernel32/tests: Don't use full path for executable in tests.

2006-12-21  Ken Thomases <ken@codeweavers.com>

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Replace pthread mutex with OSSpinLock.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Move a memset out of a mutex-guarded section.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Merge wodReset and wodHelper_Reset.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Change to faster non-recursive mutex.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Push notify of completions from render callback to message thread.
	Rather than have the Audio Unit render callback traverse the queue of wave
	headers looking for complete ones, and sending a message to the message thread
	for each one it finds, just send one message to tell the message thread to do
	that work itself.  The render callback is called in a real-time priority
	thread and is expected to return as quickly as possible.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Remove more mutexes from around Audio Unit calls.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Report when the render callback is just providing silence.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Lift mutex lock/unlock out of wodHelper_PlayPtrNext to caller.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Leave audio unit running, except when waveout device paused.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Eliminate unnecessary variable, unreachable code, unused retval.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Inline & eliminate the specializations of wodHelper_BeginWaveHdr.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Specialize wodHelper_BeginWaveHdr for its two callers and
	simplify.
	wodHelper_PlayPtrNext is only called when state == WINE_WS_PLAYING.  Also, it
	clears dwPartialOffset itself.
	wodWrite only calls wodHelper_BeginWaveHdr[Write] with a non-NULL lpWaveHdr
	parameter.  wodWrite is not called from the Audio Unit render callback, so it
	can use Wine debug channels.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Simplify handling of BEGIN+ENDLOOP wave headers.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Extract wodHelper_CheckForLoopBegin() from
	wodHelper_BeginWaveHdr().
	This refactoring prepares the ground for subsequent refactoring of
	wodHelper_BeginWaveHdr.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Create port for sending messages to the callback thread only once.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Control the fprintf's by the Wine debug channel on/off settings.

2006-12-21  Günther Brammer <GBrammer@gmx.de>

	* dlls/ddraw/tests/dsurface.c:
	ddraw: Add a test for IDirectDrawSurface_SetColorKey.

2006-12-20  Huw Davies <huw@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Actually create the Wine fonts key if it doesn't exist.

2006-12-20  Juan Lang <juan_lang@yahoo.com>

	* dlls/kernel32/profile.c:
	kernel32: Suppress an unneeded warning.

2006-12-20  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/vartype.c:
	oleaut32: VarBstrFromCy - Remove use of sprintfW by converting a CY
	into a DECIMAL instead of a double as an intermediate step.

2006-12-20  Chris Robinson <chris.kcat@gmail.com>

	* dlls/d3d8/tests/device.c, dlls/d3d9/directx.c, dlls/d3d9/tests/device.c,
	  dlls/wined3d/directx.c:
	d3d: Fix adapter mode enumeration and filtering.

2006-12-20  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/device.c:
	dinput: Drop magic int.

	* dlls/dinput/data_formats.c, dlls/dinput/joystick_linuxinput.c:
	dinput: Set the correct size for the old dinput joystick.
	This also reverts my previous patch as this is the real cause for the
	problems with Grand Prix Legends.

2006-12-19  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Reinstall the nvrc texture unit mapping.

	* dlls/wined3d/device.c:
	wined3d: Catch nop pixel shader changes.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add pixel shaders to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c:
	wined3d: Catch nop sampler changes.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move samplers to the state table.

	* dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add empty sampler entries to the state table.

	* dlls/wined3d/device.c:
	wined3d: Catch nop SetTextureStageState calls.

	* dlls/wined3d/state.c:
	wined3d: Make WINED3DTSS_CONSTANT a nogl state.

	* dlls/wined3d/state.c:
	wined3d: Make a WINED3DTSS_RESULTARG stub.

	* dlls/wined3d/state.c:
	wined3d: Make WINED3DTSS_TEXTURETRANSFORMFLAGS a nogl state.

	* dlls/wined3d/state.c:
	wined3d: Add a WINED3DTSS_BUMPENVLOFFSET stub.

	* dlls/wined3d/state.c:
	wined3d: Add a WINED3DTSS_BUMPENVSCALE stub.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DTSS_TEXCOORDINDEX to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DTSS_ALPHAOP to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move WINED3DTSS_COLOROP to the state table.

	* dlls/wined3d/basetexture.c:
	wined3d: Do not enable the texture dimensions in BindTexture.

	* dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add empty texture stage states to the state table.

	* dlls/wined3d/drawprim.c, dlls/wined3d/stateblock.c:
	wined3d: Temporary disable nvrc junk texture skipping.

2006-12-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/regsvr.c:
	shell32: Don't hardcode the system32 directory in registered classes.

	* loader/kthread.c:
	loader: Try to detect glibc 2.3 without NPTL or TLS and print a warning.

	* dlls/kernel32/tests/module.c, dlls/ntdll/loader.c:
	ntdll: Fix the libdl refcount when loading the same builtin twice.

2006-12-20  Francois Gouget <fgouget@codeweavers.com>

	* dlls/kernel32/tests/module.c:
	kernel32/tests: Test loading and unloading of builtin dlls.

2006-12-20  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c, dlls/ws2_32/tests/sock.c:
	ws2_32: ws_sockaddr_u2ws should zero the sockaddr_in.sin_zero field.

2006-12-20  Alexandre Julliard <julliard@winehq.org>

	* include/guiddef.h, include/windef.h, include/wine/debug.h,
	  include/wine/test.h, include/winnt.h:
	include: Get rid of the WINE_NO_LONG_AS_INT ifdefs.

	* programs/winedbg/Makefile.in, programs/winedbg/be_i386.c,
	  programs/winedbg/break.c, programs/winedbg/dbg.y,
	  programs/winedbg/gdbproxy.c, programs/winedbg/info.c,
	  programs/winedbg/memory.c, programs/winedbg/stack.c,
	  programs/winedbg/symbol.c, programs/winedbg/tgt_active.c,
	  programs/winedbg/tgt_minidump.c, programs/winedbg/types.c,
	  programs/winedbg/winedbg.c:
	winedbg: Win64 printf format fixes.

	* programs/winedbg/be_i386.c, programs/winedbg/debugger.h,
	  programs/winedbg/gdbproxy.c, programs/winedbg/info.c,
	  programs/winedbg/tgt_minidump.c:
	winedbg: Fixed a few data types.

2006-12-20  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Warp mouse in exclusive cooperation mode only.

	* dlls/dinput/mouse.c:
	dinput: Use GetCursorPos() to calculate relative mouse movements.

2006-12-19  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj_private.h, dlls/ole32/rpc.c:
	ole32: Send a causality ID in the ORPCTHIS header for a call.
	Use the causality ID to determine whether this is a top-level or a
	nested (called-back) call for the purposes of IMessageFilter::HandleInComingCall.

	* dlls/ole32/tests/marshal.c:
	ole32: Reset the message filter at the end of the message filter test.

	* dlls/ole32/compobj_private.h, dlls/ole32/rpc.c,
	  dlls/ole32/stubmanager.c:
	ole32: Pass in the IID and IUnknown* of the object being executed to the server
	notification and message filter functions.

	* dlls/ole32/rpc.c, dlls/ole32/tests/marshal.c:
	ole32: Call the message filter for incoming calls.

	* dlls/ole32/rpc.c:
	ole32: Call ServerNotify for channel hooks.
	Store the SChannelHookCallInfo structure in the message state.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h,
	  dlls/ole32/ole32.spec, dlls/ole32/rpc.c:
	ole32: Implement CoRegisterChannelHook and call channel hook methods on the
	client side.

	* dlls/ole32/rpc.c:
	ole32: Marshal the ORPCTHIS structure prefixed to the client data when doing
	ORPC calls.
	This is done by putting the ORPCTHIS data into the buffer when calling
	IRpcChannelBuffer::GetBuffer on the client side and then storing the
	amount we increased the buffer in a structure stored in the Handle
	field. This is done to present the correct Buffer pointer to the proxy
	so that it writes its data after the ORPCTHIS data.
	Unmarshal the data on the server side (during RPC_ExecuteCall) and make
	sure the data is consistent according to NDR rules. Also add several
	checks on the unmarshaled data that are specified by the DCOM draft
	specification.

2006-12-19  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/glsl_shader.c:
	wined3d: Allow wined3d to handle multiple render targets.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Allow the FBO code to handle multiple render targets.

	* dlls/wined3d/device.c:
	wined3d: Move storing the render target from ActiveRender to SetRenderTarget.
	Use the render target index rather than hardcoding 0.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/wined3d_private.h:
	wined3d: Allow the device to store multiple render targets.

2006-12-19  Hans Leidekker <hans@it.vu.nl>

	* include/winnt.h, tools/winedump/main.c, tools/winedump/pe.c,
	  tools/winedump/winedump.man.in:
	winedump: Start dumping .NET specific bits from PE executables.

2006-12-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c:
	ntdll: Fixed typo in map_image.

2006-12-19  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: pbuffer detection.

2006-12-19  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Don't crash when called with a NULL gl context.

2006-12-19  Huw Davies <huw@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Improve the fontconfig filtering hack so that Mac suitcase fonts get
	through.

2006-12-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/gdi32/gdiobj.c:
	gdi32: Remove unused function.

2006-12-19  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/usrmarshal.c:
	ole32: Fix the HMETAFILEPICT user marshaling test to use the size
	derived from the return value of HMETAFILEPICT_UserMarshal instead of
	the value returned by HMETAFILEPICT_UserSize, as the latter
	over-estimates the size on Windows.
	Remove some unnecessary casts.

2006-12-19  Juris Smotrovs <juris.smotrovs@sets.lv>

	* dlls/user32/tests/msg.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/winpos.c:
	user32: Extend the support for SWP_STATECHANGED for all windows.

2006-12-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c, dlls/wined3d/utils.c,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DRS_STIPPLEPATTERNxy.

2006-12-15  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Fix a function name.

	* dlls/wined3d/state.c:
	wined3d: Add missing render state function.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c:
	wined3d: Catch nop render state changes.

	* dlls/wined3d/device.c:
	wined3d: Move render state applying to drawprim.

2006-12-19  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add the state dirtification infrastructure.

2006-12-17  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* configure, configure.ac, dlls/msvcrt/msvcrt.h, dlls/msvcrt/msvcrt.spec,
	  dlls/msvcrt/string.c, include/config.h.in:
	msvcrt: Add _atoldbl.

2006-12-19  Alexandre Julliard <julliard@winehq.org>

	* configure:
	configure: Re-generated with autoconf 2.61.

2006-12-14  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/vartype.c:
	oleaut32: Bypass conversion to string in R4/R8 -> DECIMAL conversion.

2006-12-18  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/user32/tests/win.c, dlls/winex11.drv/mouse.c:
	winex11drv: Return cached cursor_pos in GetCursorPos().

2006-12-18  Hans Leidekker <hans@it.vu.nl>

	* dlls/ws2_32/socket.c:
	ws2_32: Implement the SIO_ADDRESS_LIST_QUERY ioctl.

2006-12-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/loader.c:
	kernel32: Add a minimal PE image that XP is able to load.

2006-12-18  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/Makefile.in, dlls/msi/tests/install.c:
	msi: Enable cab compression and delete any resulting cabs using SHFileOperation.

	* dlls/msi/tests/install.c:
	msi: Run the install tests from a temporary directory.

2006-12-15  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Implement ScriptStringCPtoX.

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Implement ScriptStringXtoCP.

	* dlls/usp10/usp10.c:
	usp10: Implement ScriptStringFree.

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Implement ScriptStringAnalyse.

2006-12-18  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/volume.c:
	d3d9: Handle volume container in d3d9.

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c, dlls/d3d9/directx.c,
	  dlls/d3d9/surface.c:
	d3d9: Handle surface container in d3d9.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/volume.c:
	d3d8: Handle volume container in d3d8.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d8/surface.c, dlls/d3d8/tests/device.c:
	d3d8: Handle surface container in d3d8.

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/directx.c, dlls/d3d9/swapchain.c,
	  dlls/d3d9/tests/device.c:
	d3d9: Fix implicit swap chain refcounting.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c, dlls/d3d9/directx.c,
	  dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/ddraw/surface.c,
	  dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	d3d: Callback infrastructure for implicit swap chain destruction in
	IWineD3DDevice.

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c, dlls/d3d9/directx.c,
	  dlls/d3d9/surface.c, dlls/d3d9/swapchain.c, dlls/d3d9/tests/device.c:
	d3d9: Fix implicit surface refcounting.

	* dlls/wined3d/volume.c, include/wine/wined3d_interface.h:
	wined3d: Remove IWineD3DVolume_GetContainerParent.

	* dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: Remove IWineD3DSurface_GetContainerParent.

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/volume.c, dlls/d3d9/volumetexture.c:
	d3d9: Handle volume refcount forwarding in d3d9.

	* dlls/d3d9/cubetexture.c, dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c,
	  dlls/d3d9/surface.c, dlls/d3d9/tests/device.c, dlls/d3d9/texture.c:
	d3d9: Handle surface refcount forwarding in d3d9.

	* dlls/wined3d/device.c:
	wined3d: Call the depth stencil destroy callback function.

2006-12-18  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Update the text control when the selection path changes.

	* dlls/msi/events.c:
	msi: Only cleanup event subscriptions of the dialog being closed.

2006-12-17  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/mouse.c, dlls/dinput/tests/Makefile.in,
	  dlls/dinput/tests/device.c:
	dinput: Make mouse use axis mode flag set in base class. Add tests.

	* dlls/dinput/device.c:
	dinput: Add handling of AXISMODE property to base device object.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Zero out returned information struct.

	* dlls/dinput/keyboard.c:
	dinput: Don't return non existent keys.

2006-12-17  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/heap.c:
	kernel32: Protect global alloc functions against integer overflows on the
	size parameter.

	* dlls/ole32/hglobalstream.c, dlls/ole32/tests/hglobalstream.c:
	ole32: Fix SetSize for HGLOBAL streams in the case of being out-of-memory.

	* dlls/ole32/ole32.spec, dlls/ole32/tests/usrmarshal.c,
	  dlls/ole32/usrmarshal.c:
	ole32: Implement HMETAFILE and HMETAFILEPICT user marshaling functions and
	add tests for these.

	* dlls/ole32/tests/Makefile.in, dlls/ole32/tests/marshal.c,
	  dlls/ole32/tests/usrmarshal.c:
	ole32: Move the user marshal tests to usrmarshal.c.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Free the resource allocated by InitializeSecurityContext when the
	connection is closed.

	* dlls/ole32/usrmarshal.c:
	ole32: Add documentation for the user marshaling functions.

	* dlls/ole32/datacache.c:
	ole32: Support reading and writing custom clipformats in the data cache.

2006-12-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/winedump/pe.c:
	winedump: Remove a redundant ';'.

	* tools/winedump/pe.c:
	winedump: Fix a couple of typos.

2006-12-17  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/usp10/tests/usp10.c:
	usp10/tests: Make tests run on win9x and NT4 again.

	* dlls/user32/tests/monitor.c:
	user32/tests: Make sure the tests run on NT4 again.

2006-12-16  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* server/token.c:
	server: Cast-qual warnings fix.

	* server/object.c:
	server: Cast-qual warnings fix.

2006-12-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/cppexcept.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Define __CxxLongjmpUnwind for i386 only.

2006-12-16  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/winhelp/hlpfile.c:
	winhelp: Cast-qual warnings fix.

	* programs/winecfg/theme.c:
	winecfg: Cast-qual warning fix.

	* programs/progman/group.c:
	progman: Cast-qual warnings fix.

	* dlls/version/tests/info.c:
	version/tests: Write-strings warning fix.

2006-12-15  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/ddraw_thunks.c,
	  dlls/ddraw/main.c:
	ddraw: IDirectDraw3 should use its own ref count variable.

	* dlls/ddraw/main.c:
	ddraw: Initialize the IDirectDraw3 vtable.

2006-12-15  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Add tests for XcvDataPort.

2006-12-16  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, include/config.h.in:
	configure: Remove some no longer used libcurses checks.

2006-12-14  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/ddraw/tests/ddrawmodes.c, dlls/wined3d/device.c:
	wined3d: When changing display modes clip cursor to the requested display size.

2006-12-14  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/gdi32/opengl.c, dlls/winex11.drv/opengl.c:
	winex11.drv: Avoid grabbing syslevel locks in the wrong order.

2006-12-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/cppexcept.c, dlls/msvcrt/except.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Implemented __CxxLongjmpUnwind.

	* dlls/msvcrt/cppexcept.c, dlls/msvcrt/cppexcept.h:
	msvcrt: Make pointers to read-only exception descriptors const.

2006-12-15  James Hawkins <truiken@gmail.com>

	* dlls/cabinet/fdi.c:
	cabinet: Close the opened file handle even in error cases.

2006-12-15  Hans Leidekker <hans@it.vu.nl>

	* dlls/setupapi/setupapi.spec, dlls/setupapi/stubs.c, include/setupapi.h:
	setupapi: Add a stub implementation for SetupPromptReboot.

2006-12-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/edit.c:
	user32: Center the context menu if it was activated via VK_APPS like Windows
	does.

	* dlls/user32/message.c, dlls/user32/tests/msg.c,
	  dlls/winex11.drv/keyboard.c:
	user32: Add support for the VK_APPS (Menu) key.

	* dlls/ddrawex/ddrawex_private.h, dlls/ddrawex/main.c:
	ddrawex: Avoid not necessary casts.

	* dlls/ddraw/ddraw_thunks.c:
	ddraw: Fix warnings.

2006-12-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/secur32/tests/ntlm.c:
	secur32/tests: Cast-qual warnings fix.

2006-12-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Clean up SetRenderState.

	* dlls/d3d8/tests/device.c, dlls/ddraw/tests/d3d.c, dlls/wined3d/device.c:
	wined3d: D3DRS_ZVISIBLE is not supposed to return an error.

	* dlls/ddraw/surface.c:
	ddraw: Add a TRACE to GetPixelFormat.

2006-12-14  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/olecmd.c:
	mshtml: Use pvaIn in exec_print.

2006-12-14  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/shlwapi/tests/path.c:
	shlwapi/tests: Fix typos.

2006-12-14  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/user32/cursoricon.c, dlls/user32/tests/monitor.c,
	  dlls/winex11.drv/winpos.c:
	user32: ClipCursor should use virtual screen resolution for empty/invalid rects.

2006-12-14  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/ddrawex/Makefile.in, dlls/ddrawex/ddrawex.spec,
	  dlls/ddrawex/ddrawex_private.h, dlls/ddrawex/main.c:
	Add ddrawex dll.

2006-12-13  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h,
	  dlls/ddraw/ddraw_thunks.c, include/ddraw.h:
	ddraw: Add IDirectDraw3 interface.

2006-12-09  Günther Brammer <GBrammer@gmx.de>

	* dlls/ddraw/surface.c:
	ddraw: Fix IDirectDrawSurfaceImpl_SetColorKey to also change surface_desc.

2006-12-14  Francois Gouget <fgouget@free.fr>

	* dlls/cabinet/fci.c, dlls/kernel32/tests/heap.c, dlls/usp10/usp10.c,
	  dlls/wined3d/directx.c, dlls/winedos/int15.c,
	  dlls/winspool.drv/tests/info.c, programs/wineconsole/wineconsole.c,
	  programs/winedbg/break.c:
	Assorted spelling fixes.

	* dlls/comdlg32/printdlg.c, dlls/comdlg32/tests/printdlg.c:
	comdlg32: Fix PrintDlg(NULL) and reenable a test that was in an '#if 0'.
	Fix the test so it compiles without warnings.

	* dlls/ole32/tests/marshal.c:
	ole32/tests: Replace some '#if 0's with 'if (0)'s.
	Fix the code so it compiles.

	* dlls/user32/tests/class.c, dlls/user32/tests/clipboard.c,
	  dlls/user32/tests/msg.c, dlls/user32/tests/sysparams.c,
	  dlls/user32/tests/win.c:
	user32/tests: Replace some '#if 0's with 'if (0)'s.
	Fix the code so it compiles without warnings.

	* dlls/version/tests/info.c:
	version/tests: Replace some '#if 0's with 'if (0)'s.
	Fix the code so it compiles without warnings.

	* dlls/shlwapi/tests/clist.c:
	shlwapi/tests: Replace some '#if 0's with 'if (0)'s.

	* dlls/advapi32/tests/crypt_md4.c:
	advapi32/tests: Replace an '#if 0' with an 'if (0)'.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Replace some '#if 0's with 'if (0)'s.

	* dlls/comctl32/tests/mru.c:
	comctl32/tests: Replace some '#if 0's with 'if (0)'s.
	Fix the code so it compiles without warnings.

2006-12-14  Francois Gouget <fgouget@codeweavers.com>

	* dlls/shell32/shlexec.c:
	shell32: Replace numeric literals with the proper constant.

2006-12-14  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/secur32/ntlm.c, dlls/secur32/schannel.c:
	secur32: Make some data const.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Make some data const.

	* dlls/rsaenh/mpi.c, dlls/rsaenh/rsaenh.c, dlls/rsaenh/tomcrypt.h:
	rsaenh: Make some data const and static.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Make some data const.

	* dlls/msvcrt/exit.c, dlls/msvcrt/locale.c:
	msvcrt: Make some data const.

	* dlls/dswave/dswave_main.c:
	dswave: Make some data const.

	* dlls/crypt32/store.c:
	crypt32: Make some data const.

	* dlls/dplayx/dplayx_global.c:
	dplayx: Make some data const.

	* dlls/winmm/winearts/audio.c:
	winearts: Make some data const.

	* dlls/dmime/audiopath.c:
	dmime: Make some data const and static.

	* dlls/dbghelp/module.c:
	dbghelp: Make some data const.

	* dlls/atl/registrar.c:
	atl: Make some data const.

	* dlls/winmm/wineoss/midi.c, dlls/winmm/wineoss/midipatch.c,
	  dlls/winmm/wineoss/mixer.c:
	wineoss: Make some data const.

2006-12-14  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/process.c:
	kernel32/tests: Be a bit more verbose on failure.

2006-12-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/msi/cond.y:
	Revert "msi: Comparisons with null in conditions are special."
	This reverts commit 9dce96b3155ce07dffa4f5b0712fbcaad9ba3e2c.

	* dlls/msi/tests/package.c:
	msi: Fix the condition test to not assume MsiNetAssemblySupport is empty.

2006-12-14  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/surface.c, dlls/d3d8/tests/device.c:
	d3d8: Release non implicit surfaces only if refcount is 0, with test.

2006-12-14  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdoclc/En.rc, dlls/shdoclc/shdoclc.h:
	shdoclc: Added print template strings.

	* dlls/mshtml/olecmd.c, dlls/mshtml/resource.h:
	mshtml: Set default print template in exec_print.

	* dlls/mshtml/nsio.c:
	mshtml: Fixed handling chrome protocol.

	* dlls/mshtml/nsio.c:
	mshtml: Don't do anything in SetNSContainer if new container is the same
	as previous.

	* dlls/mshtml/nsio.c:
	mshtml: Fix loading pages in containers without document.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c, dlls/mshtml/nsio.c:
	mshtml: Added nsACString_SetData function and use it instead of nsACString_Init
	when we return string value.

2006-12-13  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/rpcrt4/tests/cstub.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4/tests: Cast-qual warnings fix.

2006-12-13  Francois Gouget <fgouget@codeweavers.com>

	* dlls/shell32/shlexec.c:
	shell32: Fix FindExecutableW() to not check if lpResult after using it. It's
	supposed to cause a segfault anyway.
	Use SE_ERR_FNF rather than a numeric literal.

	* dlls/shell32/shlexec.c:
	shell32: Add some documentation for FindExecutableW().

	* dlls/shell32/shlexec.c, dlls/shell32/tests/shlexec.c:
	shell32: Fix FindExecutable() to return the executable path,  not the whole
	command.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Add FindExecutable() tests.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: MSDN says ShellExecute() == 32 indicates an error. So fix
	the tests.

2006-12-13  Francois Gouget <fgouget@free.fr>

	* dlls/ole32/tests/ole2.c:
	ole32: Fix named/nameless union compilation error.

	* dlls/msvcrt/tests/cpp.c, dlls/msvcrt/tests/string.c:
	msvcrt: The tests link with msvcrt(d).dll now, so use GetModuleHandle() rather
	than LoadLibrary().

2006-12-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsiface.idl, dlls/mshtml/olecmd.c:
	mshtml: Added beginning of IDM_PRINT implementation.

	* dlls/mshtml/protocol.c, dlls/mshtml/tests/protocol.c:
	mshtml: Added test of CompareUrl.

2006-12-12  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/winex11.drv/mouse.c:
	winex11.drv: Update cached cursor position after calling hook.

	* dlls/user32/tests/input.c, dlls/winex11.drv/mouse.c:
	winex11.drv: Only events with MOUSEEVENTF_MOVE flag should change mouse position.

2006-12-13  Pierre d'Herbemont <pdherbemont@free.fr>

	* dlls/kernel32/locale.c:
	kernel32: Remove unneeded headers.

2006-12-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/tests/loader.c, dlls/ntdll/virtual.c, server/mapping.c:
	ntdll: Map the PE header up to the specified size, and clear the rest of
	the page.

2006-12-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/loader.c:
	kernel32: Add the data that mimics the PE image which upack creates.

2006-12-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/internet.c, dlls/urlmon/tests/misc.c,
	  dlls/urlmon/urlmon_main.c:
	urlmon: Use pluggable protocol in CoInternetCompareUrl.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added application/x-msdownload mime filter.

2006-12-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvcrt/tests/file.c:
	msvcrt/tests: Cast-qual warnings fix.

	* dlls/ntdll/rtl.c, dlls/ntdll/tests/rtl.c, include/winternl.h:
	ntdll/tests: Cast-qual warning fix.

2006-12-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fixed computation of viewport and scissor position.

2006-12-10  Pierre d'Herbemont <pdherbemont@free.fr>

	* dlls/user32/driver.c, dlls/user32/user_private.h, dlls/user32/win.c,
	  dlls/winex11.drv/window.c, dlls/winex11.drv/winex11.drv.spec:
	user32: Factorize graphics driver SetParent into user32.

2006-12-11  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Add tests and fix for ScriptXtoCP .

2006-12-12  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Use standard mouse data format instead of custom one.

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Remove redundant parameter.

	* dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Move mouse & keyboard user data format to base class.

	* dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c:
	dinput: Move joystick user data format into base class.

	* dlls/dinput/device.c, dlls/dinput/device_private.h:
	dinput: Add user data format into base class. Implement SetDataFormat.

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/mouse.c:
	dinput: Move transform and offsets structures into base device class.

2006-12-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/winetest/main.c:
	winetest: Show correct filenames on test.winehq.org.

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: No need to return anything as we are using a global
	variable now.

2006-12-12  Pierre d'Herbemont <pdherbemont@free.fr>

	* dlls/kernel32/locale.c:
	kernel32: Allow the preferred language to be different from the preferred
	locale on Mac OS X.

2006-12-08  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlwindow.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsservice.c:
	mshtml: Use HTMLWindow::alert in nsPromptService::Alert.

2006-12-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlwindow.c, dlls/mshtml/resource.h:
	mshtml: Added alert implementation.

2006-12-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c:
	winex11.drv: Get rid of the display pointer in the GL context.

	* dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c:
	opengl32: Don't use ENTER_GL/LEAVE_GL around calls to driver functions.
	This causes lock inversions when the driver accesses the DC.

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.h,
	  dlls/opengl32/opengl_norm.c, dlls/opengl32/wgl.c:
	opengl32: Avoid generating a wrapper for internal functions when we can call
	the internal one directly.

2006-12-07  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.h,
	  dlls/opengl32/opengl_norm.c, dlls/opengl32/wgl.c,
	  dlls/winex11.drv/opengl.c:
	winex11.drv: Correctly position and clip opengl child windows.

2006-12-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Get rid of the unused set_drawable function.

	* dlls/gdi32/clipping.c:
	gdi32: Use a more appropriate size for the default clip region.

	* dlls/gdi32/dc.c, dlls/winex11.drv/init.c:
	winex11.drv: Implemented DESKTOPHORZ/VERTRES device caps.

	* dlls/winex11.drv/bitblt.c, dlls/winex11.drv/bitmap.c,
	  dlls/winex11.drv/init.c, dlls/winex11.drv/xrender.c:
	winex11.drv: Make sure the drawable rect is always updated and use it where
	appropriate.

2006-12-07  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/winex11.drv/bitblt.c, dlls/winex11.drv/clipping.c,
	  dlls/winex11.drv/dce.c, dlls/winex11.drv/dib.c,
	  dlls/winex11.drv/graphics.c, dlls/winex11.drv/init.c,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/text.c,
	  dlls/winex11.drv/x11drv.h, dlls/winex11.drv/xrender.c,
	  include/wine/server_protocol.h, server/protocol.def, server/trace.c,
	  server/window.c:
	winex11.drv: Store window and drawable rects in X11DRV_PDEVICE.

2006-12-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/clipboard.c:
	winex11.drv: Remove unused PropertyAliasMap variable.

2006-12-11  Hans Leidekker <hans@it.vu.nl>

	* dlls/mscoree/mscoree.spec, dlls/mscoree/mscoree_main.c:
	mscoree: Add a stub implementation for CorExitProcess and
	GetRequestedRuntimeInfo.

	* dlls/mscoree/Makefile.in, dlls/mscoree/mscoree_main.c:
	mscoree: Take advantage of an installed Mono for Windows to run .NET
	applications.

2006-12-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Don't treat having no printers as a failure.

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Make default_printer a global variable.

2006-12-11  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvcrt/tests/printf.c:
	msvcrt/tests: Cast-qual warnings fix.

	* dlls/msvcrt/tests/cpp.c:
	msvcrt/tests: Cast-qual warnings fix.

	* dlls/msi/tests/install.c:
	msi/tests: Cast-qual warning fix.

2006-12-11  Marcus Meissner <marcus@jet.franken.de>

	* dlls/comctl32/tests/comboex.c, dlls/comctl32/tests/header.c,
	  dlls/comctl32/tests/monthcal.c, dlls/comctl32/tests/progress.c,
	  dlls/comctl32/tests/toolbar.c, dlls/comctl32/tests/treeview.c,
	  dlls/usp10/tests/usp10.c, dlls/winmm/tests/wave.c:
	Made some functions static.

2006-12-08  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Add tests for XcvClosePort.

	* dlls/localspl/tests/localmon.c, include/ddk/winsplp.h:
	localspl/tests: Add tests for XcvOpenPort.

2006-12-11  Hans Leidekker <hans@it.vu.nl>

	* dlls/shell32/shell32.spec, dlls/shell32/shell32_main.c:
	shell32: Add a stub implementation for SHLoadNonloadedIconOverlayIdentifiers.

2006-12-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_SEPARATEALPHABLENDENABLE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move SRGBWRITEENABLE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move tesselation to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_NORMALDEGREE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_POSITIONDEGREE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Make WINED3DRS_DEBUGMONITORTOKEN a nogl state.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_PATCHSEGMENTS to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_PATCHEDGESTYLE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_MULTISAMPLEMASK to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_ANTIALIAS to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_STIPPLEDALPHA to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_TEXTUREPERSPECTIVE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_DEPTHBIAS to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_SCISSORTESTENABLE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_MULTISAMPLEANTIALIAS to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_WRAPx to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_POINTSPRITEENABLE to the state table.

	* dlls/wined3d/device.c:
	wined3d: WINED3DRS_SOFTWAREVERTEXPROCESSING is a nogl state.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_LASTPIXEL to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_LOCALVIEWER to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_COLORWRITEENABLEx to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move point scale render states to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_POINTSIZE_MAX to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_POINTSIZE_MIN to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_POINTSIZE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_NORMALIZENORMALS to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_ZBIAS to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_LINEPATTERN to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_COLORVERTEX to the state table.

2006-12-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/cryptdll/cryptdll.c:
	cryptdll: Change storage class of module handle to static.

2006-12-10  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c:
	dinput: Move few helper functions and standardize them.

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/mouse.c:
	dinput: Move internal function calculate_ids to where it's really used.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: No need to copy default constant format. Use already defined static
	instead.

2006-12-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/shlfileop.c:
	shell32: Avoid using garbage data in wildcard expansion.

2006-12-10  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Make the WGL code independant of the number of supported pixel formats.

2006-12-10  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	wgl: Properly handle GLX_DRAWABLE_TYPE queries.

2006-12-11  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Utilize IDirectInputDevice2AImpl_Acquire/Unacquire.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Ensure that the size of the dev caps pointer is large enough - no exact.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Silently ignore DIPROP_CALIBRATIONMODE.

2006-12-10  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c:
	dinput: Remove incorrect assumption about format.

2006-12-08  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Set WINED3DRS_INDEXEDVERTEXBLENDENABLE to state_nogl.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Remove the unused tween factor stateblock member.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Remove the unused stateblock vertex blend member.

2006-12-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move wined3drs_fogdensity to the state table.

2006-12-08  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_FOGCOLOR to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Make WINED3DRS_RANGEFOGENABLE a nogl state.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move fog states to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_STENCILWRITEMASK to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move stencil states to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_SPECULARENABLE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_TEXTUREFACTOR to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_BLENDOP to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move clipping states to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move alpha states to the state table.

	* dlls/d3d9/tests/device.c, dlls/wined3d/device.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement IWineD3DDevice::Reset.

2006-12-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mapi32/tests/util.c:
	mapi32/tests: Cast-qual warnings fix.

	* dlls/mapi32/tests/prop.c:
	mapi32/tests: Cast-qual warnings fix.

	* dlls/gdi32/tests/metafile.c:
	gdi32/tests: Cast-qual warning fix.

2006-12-10  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Reduce the number of error messages.

2006-12-10  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/comctl32/imagelist.c:
	comctl32: Fix imagelist regression from "comctl32: Remove Nx1 assumptions
	in ImageList_Read".

2006-12-10  Marcus Meissner <marcus@jet.franken.de>

	* dlls/crypt32/tests/cert.c, dlls/ddraw/tests/refcount.c,
	  dlls/dinput/tests/dinput_test.h, dlls/dinput/tests/joystick.c,
	  dlls/dsound/tests/capture.c, dlls/dsound/tests/dsound_test.h,
	  dlls/dsound/tests/propset.c, dlls/gdi32/tests/bitmap.c,
	  dlls/gdi32/tests/mapping.c, dlls/gdi32/tests/metafile.c,
	  dlls/msi/tests/db.c, dlls/msvcrt/tests/data.c,
	  dlls/msvcrt/tests/dir.c, dlls/msvcrt/tests/string.c,
	  dlls/msxml3/tests/domdoc.c, dlls/ole32/tests/ole2.c,
	  dlls/oleaut32/tests/olefont.c, dlls/oleaut32/tests/safearray.c,
	  dlls/oleaut32/tests/vartype.c, dlls/rpcrt4/tests/cstub.c,
	  dlls/rpcrt4/tests/ndr_marshall.c, dlls/secur32/tests/main.c,
	  dlls/shell32/tests/shlfolder.c, dlls/user32/tests/dde.c,
	  dlls/user32/tests/edit.c, dlls/user32/tests/menu.c,
	  dlls/user32/tests/sysparams.c, dlls/user32/tests/win.c:
	made functions and variables static in some testcases.

2006-12-10  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: Fix typo.

2006-12-09  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/joystick_linux.c:
	dinput: Fix processing of custom format.

2006-12-10  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dmstyle/dmutils.c:
	dmstyle: Dangling references fix.

	* dlls/dmloader/debug.c:
	dmloader: Dangling references fix.

2006-12-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dmime/dmutils.c:
	dmime: Dangling references fix.

	* dlls/kernel32/tests/locale.c:
	kernel32/tests: Cast-qual warnings fix.

2006-12-09  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/storage.c:
	dbghelp: Sparse array speed up.

2006-12-08  Alexandre Julliard <julliard@winehq.org>

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

----------------------------------------------------------------
2006-12-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/freetype.c:
	gdi32: Don't assume that the font codepages change with the user locale.
	Codepages can be set independently with LC_CTYPE.

	* dlls/msvcrt/locale.c:
	msvcrt: Use LOCALE_USER_DEFAULT to get the proper codepage for the Unix locale.

	* dlls/shlwapi/tests/string.c:
	shlwapi: Fixed string tests for non-English locales.

2006-12-08  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move blending related states to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_AMBIENT to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_ZFUNCENABLE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_ZWRITEENABLE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_DITHERENABLE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_SHADEMODE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_CULLMODE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_ZENABLE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_LIGHTNING to the state table.

2006-12-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/freetype.c:
	gdi32: Disable the freetype mmap sharing on Mac OS.

2006-12-08  Marcus Meissner <marcus@jet.franken.de>

	* dlls/comcat/comcat_private.h, dlls/comcat/manager.c:
	comcat: Remove const from COMCAT Manager.

2006-12-08  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shell32/shres.rc, dlls/shell32/shresdef.h:
	shell32: Define AVI resource 152.

2006-12-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advpack/tests/advpack.c:
	advpack/tests: Change the output for HRESULT's.

2006-12-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/dbghelp/stack.c:
	dbghelp: Avoid a printf format warning.

	* tools/winedump/pdb.c:
	winedump: Avoid printf format warnings.

2006-12-08  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/imm32/imm.c:
	imm32: Send the WM_IME_CHAR message, although ResultString has been read.

2006-12-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/crypt32/tests/encode.c:
	crypt32/tests: Cast-qual warnings fix.

	* dlls/crypt32/tests/store.c:
	crypt32/tests: Cast-qual warnings fix.

2006-12-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_FILLMODE to the state table.

2006-12-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add render states to the state table.

2006-12-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/Makefile.in, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Create the state table.

2006-12-07  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Downgrade SO_REUSEADDR fixme to a trace.

2006-12-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	ntdll: Check the NX compatibility flag for every loaded module.

	* tools/winebuild/build.h, tools/winebuild/main.c,
	  tools/winebuild/spec32.c, tools/winebuild/utils.c,
	  tools/winebuild/winebuild.man.in:
	winebuild: Added --nxcompat option, and mark all modules as NX-compatible
	by default.

	* tools/winedump/pe.c:
	winedump: Print sizes and offsets in hex.

2006-12-07  Huw Davies <huw@codeweavers.com>

	* dlls/wineps.drv/download.c:
	wineps.drv: Don't try to download a non-scalable font.

2006-12-06  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/package.c:
	msi: Add tests for comparison to empty strings.

	* dlls/msi/cond.y:
	msi: Comparisons with null in conditions are special.

2006-12-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/winedump/lib.c:
	winedump: Dump section data of COFF library files, decode some import data.

	* tools/winedump/main.c, tools/winedump/pe.c, tools/winedump/winedump.h:
	winedump: Add a possibility to dump raw section data.

	* tools/winedump/pe.c, tools/winedump/winedump.h:
	winedump: Export dump_section() for use outside of pe.c.

	* tools/winedump/pe.c, tools/winedump/winedump.h:
	winedump: Handle properly partial optional COFF headers.
	Export dump_file_header() and dump_optional_header() for use outside of pe.c.

	* tools/winedump/pe.c:
	winedump: IMAGE_SCN_ALIGN_??? are not the bit fields, but the values masked
	by IMAGE_SCN_ALIGN_MASK.

	* tools/winedump/pdb.c:
	winedump: Avoid returning void from a void function.

	* tools/winedump/pdb.c:
	winedump: Make output of dump_data fit into 80 columns.

	* dlls/kernel32/tests/loader.c:
	kernel32: Add PE images with section alignment 1 and 2 to the loader test.

2006-12-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/tests/loader.c, dlls/ntdll/virtual.c:
	ntdll: Fix the failing loader tests.

2006-12-05  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	wgl: Implement wglGetPixelFormatAttribfvARB.

2006-12-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/oleaut32/tests/vartype.c:
	oleaut32/tests: Use LOCALE_NOUSEROVERRIDE in tests that depend on the decimal
	separator.

	* dlls/oleaut32/vartype.c:
	oleaut32: Use LOCALE_NOUSEROVERRIDE where necessary in variant conversions.

	* dlls/kernel32/locale.c:
	kernel32: For LOCALE_NOUSEROVERRIDE, check locale against the appropriate
	default lcid.

	* dlls/kernel32/tests/locale.c:
	kernel32/tests: Added LOCALE_NOUSEROVERRIDE flag on time tests that rely
	on AM/PM.

2006-12-07  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* documentation/README.ko:
	README: Updated Korean translation.

2006-12-06  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winecfg/Fr.rc:
	winecfg: A few fixes for the French translation.

2006-12-06  Francois Gouget <fgouget@free.fr>

	* tools/winapi/msvcmaker:
	msvcmaker: Remove references to wine_unicode and to .spec.c files.

2006-12-07  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c:
	ole32: Add some documentation for CoCreateInstance.

	* dlls/wininet/http.c:
	wininet: Make a function for resolving the server name for an HTTP request
	and sending the appropriate callbacks and use it to remove some duplicated code.

	* dlls/wininet/http.c:
	wininet: Make HTTP_HandleRedirect no longer call HTTP_HttpSendRequestW.
	Make the redirect handling in HTTP_HttpSendRequestW iterate instead of recurse.

2006-12-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/htmlwindow.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added get_parentWindow implementation.

	* dlls/shdoclc/En.rc, dlls/shdoclc/shdoclc.h:
	shdoclc: Added IDS_MESSAGE_BOX_TITLE string.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added application/pdf mime filter.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added application/java mime filter.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added application/x-zip-compressed filter.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added application/x-gzip-compression filter.

2006-12-06  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ntdll/tests/rtl.c:
	ntdll/tests: Fix typo.

2006-12-06  Francois Gouget <fgouget@free.fr>

	* include/wingdi.h:
	gdi32: Add a prototype for GetFontUnicodeRanges().

2006-12-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/freetype.c:
	gdi32: Only mmap a given font file once.
	FT_New_Face always creates a new mapping of the font file, so do the
	mapping by hand and use FT_New_Memory_Face instead.

2006-12-05  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d8/surface.c, dlls/d3d8/swapchain.c, dlls/d3d8/tests/device.c:
	d3d8: Fix implicit surface refcounting.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/volume.c, dlls/d3d8/volumetexture.c:
	d3d8: Handle volume refcount forwarding in d3d8.

	* dlls/d3d8/cubetexture.c, dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/surface.c, dlls/d3d8/tests/device.c, dlls/d3d8/texture.c:
	d3d8: Handle surface refcount forwarding in d3d8.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c, dlls/d3d9/directx.c,
	  dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/ddraw/surface.c,
	  dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	d3d: Callback infrastructure for implicit depth stencil surface destruction
	in IWineD3DDevice.

	* dlls/wined3d/directx.c, dlls/wined3d/volumetexture.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	d3d: Callback infrastructure for implicit volume destruction in
	IWineD3DVolumeTexture.

	* dlls/wined3d/swapchain.c, include/wine/wined3d_interface.h:
	d3d: Callback infrastructure for implicit render target destruction in
	IWineD3DSwapChain.

	* dlls/wined3d/cubetexture.c, include/wine/wined3d_interface.h:
	d3d: Callback infrastructure for implicit surface destruction in
	IWineD3DCubeTexture.

	* dlls/wined3d/directx.c, dlls/wined3d/texture.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	d3d: Callback infrastructure for implicit surface destruction in IWineD3DTexture.

2006-12-04  Stefan Dösinger <stefandoesinger@gmx.at>

	* include/wine/list.h:
	wine/list.h: Added list_move_head and list_move_tail.

2006-12-06  Francois Gouget <fgouget@free.fr>

	* dlls/dmime/dmutils.c, dlls/dmime/dmutils.h:
	dmime: Remove resolve_STREAM_SEEK(), it is unused.

	* dlls/ole32/usrmarshal.c:
	ole32: Convert dump_user_flags() into debugstr_user_flags(), a proper debug
	trace function.

	* dlls/ole32/datacache.c:
	ole32: Convert dump_FORMATETC() into debugstr_formatetc(), a proper debug
	trace function.

	* tools/winapi/msvcmaker:
	msvcmaker: Link with msvcrt(d).dll rather than with the static C library.

	* tools/winapi/msvcmaker:
	msvcmaker: Tweak the .dsp formatting to better match Visual Studio.

	* tools/winapi/msvcmaker:
	msvcmaker: Remove unneeded -I.. for the msvcrt tests.

	* tools/winapi/msvcmaker:
	msvcmaker: Fix the code that sets __WINETEST_OUTPUT_DIR so it does not pollute
	$output_dir.

2006-12-05  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	wgl: Fix for missing NV GLX extension.

2006-12-06  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/package.c:
	msi: More tests for the SourceDir property.

	* dlls/msi/tests/package.c:
	msi: Add some tests for the ALTER query.

2006-12-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/symbol.c:
	winedbg: Added support for constant values passed by dbghelp.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/msc.c, dlls/dbghelp/symbol.c:
	dbghelp: Added ability to internal store / reload a symbol with a constant value.
	Let dwarf and msc use this new feature.
	As we also add global symbol without addresses, don't take those
	constant symbols into account for searches by address.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c,
	  dlls/dbghelp/storage.c, dlls/dbghelp/symbol.c:
	dbghelp: Added a field to the hash table to store the number of elements in
	the hash table.
	Make use of it to get rid to module_compute_num_syms.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/elf_module.c, dlls/dbghelp/symbol.c:
	dbghelp: In find_nearest, now return the symbol instead of its index in
	module->sorttable.

	* dlls/dbghelp/elf_module.c:
	dbghelp: Simplify the way we find the debug header.

2006-12-05  Detlef Riekenberg <wine.dev@web.de>

	* dlls/dplayx/dplay.c:
	dplayx: Display requested provider.

2006-12-05  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Cleanup wglMakeCurrent.

2006-12-05  Huw Davies <huw@codeweavers.com>

	* dlls/wineps.drv/type42.c:
	wineps.drv: When we're using a GlyphDirectory we should clear the offsets and
	lengths of the loca and glyf tables in addition to changing their names.
	Should fix printing on Mac based cups servers.

2006-12-03  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel32/tests/path.c:
	kernel32/tests: Add tests for GetWindowsDirectory.

	* dlls/kernel32/tests/path.c:
	kernel32/tests: Add tests for GetSystemDirectory.

2006-12-04  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/version/tests/info.c:
	version/tests: Free memory after use.

	* dlls/wininet/tests/url.c:
	wininet/test: Free memory after use.

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Free memory after use.

2006-12-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/volume.c:
	kernel32: Always read a full block from the CD-ROM to avoid problems on raw
	devices.

2006-12-05  Huw Davies <huw@codeweavers.com>

	* dlls/user32/listbox.c, dlls/user32/tests/listbox.c:
	user32: For LBS_OWNERDRAWVARIABLE listboxes return the fixed item height if
	the listbox is empty.

2006-12-05  James Hawkins <truiken@gmail.com>

	* dlls/msi/package.c:
	msi: Initialize sid_str to NULL.

	* dlls/msi/database.c:
	msi: Fail if stg is NULL.

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

	* dlls/ws2_32/socket.c:
	ws2_32: Rewrite setsockopt to be more readable.

2006-12-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/heap.c:
	ntdll: Added support for the HEAP_CREATE_ENABLE_EXECUTE flag.

	* loader/kthread.c:
	kthread: Don't make the stack executable by default.

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/virtual.c:
	ntdll: Force exec permissions on all mmaps unless the app is marked
	NX-compatible.

2006-12-05  Thomas Fitzsimmons <fitzsim@redhat.com>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Recognize DT_GNU_HASH.

2006-12-04  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advapi32/lsa.c:
	advapi32: Eliminate wild pointers.

	* dlls/comcat/tests/comcat.c:
	comcat/tests: Cast-qual warnings fix.

2006-12-04  Lei Zhang <thestig@google.com>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h:
	riched20: Move EM_EXSETSEL fix into ME_SetSelection.

2006-12-04  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device_private.h:
	dinput: Remove no longer used GEN_EVENT.

	* dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c:
	dinput: Move joystick event queue into base device class.

	* dlls/dinput/mouse.c:
	dinput: Move mouse event queue into base device class.

	* dlls/dinput/keyboard.c:
	dinput: Move keyboard event queue into base device class.
	This removes [Get|Set]Property and GetDeviceData.

	* dlls/dinput/device.c, dlls/dinput/device_private.h:
	dinput: Implement [Get|Set]Property and GetDeviceData in base Device object.
	Also add queue_event to replace big macro GEN_EVENT.

2006-12-05  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/msipriv.h:
	msi: Examine the attributes of all features before setting a component's state.

	* dlls/msi/tests/package.c:
	msi: Add the names of features/components to debugging output.

2006-12-04  Francois Gouget <fgouget@free.fr>

	* dlls/avifil32/avifile_It.rc, dlls/comctl32/comctl_It.rc,
	  dlls/comdlg32/cdlg_It.rc, dlls/mpr/mpr_It.rc,
	  dlls/msacm32/msacm_It.rc, dlls/msi/msi_It.rc,
	  dlls/msrle32/msrle_It.rc, dlls/oleaut32/oleaut32_It.rc,
	  dlls/oledlg/oledlg_It.rc, dlls/serialui/It.rc, dlls/setupapi/It.rc,
	  dlls/shell32/shell32_It.rc, dlls/shlwapi/shlwapi_It.rc,
	  dlls/user32/resources/user32_It.rc, dlls/wineps.drv/wps_It.rc,
	  dlls/wininet/wininet_It.rc, dlls/winspool.drv/It.rc,
	  programs/clock/It.rc, programs/cmdlgtst/It.rc,
	  programs/notepad/It.rc, programs/progman/It.rc,
	  programs/regedit/It.rc, programs/start/It.rc, programs/view/It.rc,
	  programs/winecfg/It.rc, programs/wineconsole/wineconsole_It.rc,
	  programs/winemine/It.rc, programs/winhelp/It.rc:
	Consistently use SUBLANG_NEUTRAL for Italian resources.

	* README, dlls/gdi32/gdi_private.h, dlls/iphlpapi/ifenum.c,
	  dlls/kernel32/cpu.c, dlls/kernel32/instr.c, dlls/kernel32/process.c,
	  dlls/kernel32/selector.c, dlls/msvcrt/tests/headers.c,
	  dlls/ole32/storage32.h, dlls/oleaut32/typelib.h,
	  dlls/rpcrt4/ndr_stubless.c, dlls/shell32/shell32_main.c,
	  dlls/user32/mdi.c, include/msvcrt/process.h, include/windef.h,
	  libs/wine/mmap.c, tools/widl/typelib_struct.h, tools/winedump/le.c,
	  tools/winedump/msc.c, tools/winegcc/winegcc.c:
	Assorted spelling fixes.

	* dlls/mshtml/editor.c:
	mshtml: Add '\n' to Wine trace.

	* dlls/msxml3/domdoc.c:
	msxml3: Add '\n' to Wine trace.

	* dlls/vmm.vxd/vmm.c:
	vmm.vxd: PC_WRITABLE spelling fix.

2006-12-04  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/atl/registrar.c:
	atl: Change storage class of dll_count to static.

2006-12-04  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/datacache.c:
	ole32: Implement the GetData function of the data cache to using the
	existing LoadData function and fix GetData to also return data that
	has been set, rather than loaded.

	* dlls/ole32/datacache.c, dlls/ole32/tests/ole2.c:
	ole32: Fix HandsOffStorage in the data cache.

	* dlls/ole32/datacache.c, dlls/ole32/tests/ole2.c:
	ole32: Implement the DiscardCache function in the data cache.

2006-12-04  Huw Davies <huw@codeweavers.com>

	* dlls/winspool.drv/info.c, dlls/winspool.drv/tests/info.c:
	winspool.drv: Outlook 2003 relies on the buffer size returned by EnumPrintersA
	being big enough to hold the buffer returned by EnumPrintersW.

2006-11-23  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/directx.c:
	wined3d: Add err for failure case in CheckDepthStencilMatch.

	* dlls/wined3d/directx.c:
	wined3d: Fix CreateFakeGLContext to work with a foreign context.

	* dlls/wined3d/directx.c:
	wined3d: Avoid XFree on NULL in CheckDeviceType.

	* dlls/wined3d/directx.c:
	wined3d: Rearrange code in CheckDeviceType.

	* dlls/wined3d/directx.c:
	wined3d: Add warn trace for INVALIDCALL case in CheckDeviceType.

2006-12-04  Roderick Colenbrander <thunderbird2k@gmx.net>

	* Makefile.in, configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/glut32/Makefile.in, dlls/glut32/glut.c, dlls/glut32/glut32.spec,
	  dlls/make_dlls:
	Remove glut32.

2006-12-04  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/ws2_32/tests/sock.c:
	ws2_32: Added tests for closesocket cancelling pending I/O operations.

2006-12-04  Alexandre Julliard <julliard@winehq.org>

	* server/sock.c:
	server: Explicitly shutdown destroyed sockets to force pending poll() calls
	to return.

	* dlls/kernel32/locale.c:
	kernel32: Store the LC_MESSAGES value under the "Locale" value.
	Some apps depend on the value. Reported by Karsten Elfenbein.

2006-12-02  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/symbol.c:
	winedbg: Dwarf can emit REGREL symbol information, so handle it.
	Factorize a bit more some symbol handling code.

	* programs/winedbg/break.c, programs/winedbg/debugger.h,
	  programs/winedbg/tgt_active.c:
	winedbg: Now that local variable computation depends on instruction
	pointer value, be sure to have the relevant insn ptr value when
	fetching the stack frames (spotted by Peter Oberndorfer).

	* dlls/dbghelp/dwarf.c:
	dbghelp: Fixed value stored for register relative information
	(regression spotted by Peter Oberndorfer).

	* dlls/dbghelp/dbghelp.c:
	dbghelp: Now that symbol's value computation depend on instruction
	pointer value, be sure to always store it (spotted by Peter
	Oberndorfer).

	* programs/winedbg/be_alpha.c, programs/winedbg/be_cpu.h,
	  programs/winedbg/be_i386.c, programs/winedbg/be_ppc.c,
	  programs/winedbg/be_x86_64.c, programs/winedbg/debugger.h,
	  programs/winedbg/memory.c, programs/winedbg/stack.c:
	winedbg: Added some black magic to still handle register values on non
	current frame for some of the registers we know of (frame pointer,
	stack pointer).

	* programs/winedbg/symbol.c:
	winedbg: Remove some hassle from sgv_cb, and handle line number displacement
	where needed.

	* programs/winedbg/symbol.c:
	winedbg: No longer test filename in sgv_cb, but do it in the only place where
	we actually need it.

2006-12-02  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/datacache.c:
	ole32: Add some more traces to the data cache to make debugging easier.

	* dlls/ole32/tests/ole2.c:
	ole32: Add tests for invalid clipformat/tymed combinations in IOleCache:Cache
	and for caching formats with a clipformat of 0.

	* dlls/ole32/datacache.c:
	ole32: In the data cache, fmtetc->cfFormat and fmtetc->tymed can be 0 which
	means to match any clipformat/tymed.
	Therefore, keep the clipformat of the data in the data_cf field.
	Return an error from SetData if a non-zero clipformat hasn't been specified.
	Write out stgmedium.tymed instead of fmtetc.tymed, which is guaranteed
	to be non-zero if data has been set.

	* dlls/ole32/datacache.c:
	ole32: Check that the specified clipboard format and tymed are valid in
	IOleCache::Cache in the data cache.

2006-12-03  Detlef Riekenberg <wine.dev@web.de>

	* dlls/spoolss/Makefile.in, dlls/spoolss/spoolss.spec:
	spoolss: Forward EnumPortsW to winspool.drv.

2006-12-04  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c, dlls/ws2_32/tests/sock.c:
	ws2_32: Rewrite getsockopt to make it more readable.

2006-12-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	ntdll: Allow module with extensions in forward specifications.

2006-12-04  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c, dlls/msi/tokenize.c:
	msi: Double quotes are not valid in queries.

	* dlls/msi/tests/db.c:
	msi: Add tests for quoting in queries.

2006-12-03  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d8/volume.c, dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/d3d9/volume.c, dlls/ddraw/ddraw.c,
	  dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	d3d: Pass the superior creating object down to the callback functions.

2006-12-01  Konstantin Kondratyuk <kondratyuk@etersoft.ru>

	* fonts/ms_sans_serif.sfd:
	fonts: Add Ukrainian and Byelorussian symbols in MS Sans Serif font.

	* fonts/small_fonts.sfd:
	fonts: Add Ukrainian and Byelorussian symbols in Small fonts.

	* fonts/courier.sfd:
	fonts: Add Ukrainian and Byelorussian symbols in Courier font.

	* fonts/system.sfd:
	fonts: Add Ukrainian and Byelorussian symbols in System font.

2006-12-02  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/comctl32/header.c:
	comctl32: Destroy header information on WM_NCDESTROY instead of WM_DESTROY.

2006-12-02  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	wgl: Don't return prematurely if ConvertPixelFormatWGLtoGLX receives an invalid
	pixel format.

2006-12-01  Charles Blacklock <charles@diagnos.co.uk>

	* dlls/oleaut32/vartype.c:
	oleaut32: Cleanup of previous VarBstrCmp patch.

2006-12-02  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/d3d9/tests/surface.c, dlls/wined3d/surface.c:
	wined3d/d3d9: Pitch for DXTn textures can not be 0. With tests.

2006-12-01  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/keyboard.c:
	dinput: Implement Poll for keyboard.

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Move critical section to the base device class.

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c, dlls/dinput/keyboard.c,
	  dlls/dinput/mouse.c, dlls/dinput/tests/joystick.c,
	  dlls/dinput/tests/keyboard.c, dlls/dinput/tests/mouse.c:
	dinput: Move acquired flag to the base device class. Add tests.

2006-12-04  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/parser.c:
	winebuild: Check for illegal characters in entry point names.

2006-12-04  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/nonclient.c, dlls/user32/tests/win.c:
	user32: Add ShowWindow test, make it pass under Wine.

2006-12-03  Lei Zhang <thestig@google.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Fixes and additional conformance tests for EM_EXSETSEL.

2006-12-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: (W)GL_NV_vertex_array_range.

2006-12-03  Peter Beutner <p.beutner@gmx.net>

	* dlls/ntdll/signal_i386.c, dlls/ntdll/tests/exception.c:
	ntdll: Fix single stepping over popf instruction.

2006-12-03  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* tools/winedump/msc.c:
	winedump: Cast-qual warnings fix.

	* tools/winedump/lnk.c:
	winedump: Cast-qual warnings fix.

2006-12-03  Marcus Meissner <marcus@jet.franken.de>

	* dlls/shlwapi/reg.c:
	shell32: Forward SHDeleteKeyA directly to SHDeleteKeyW.

2006-12-01  James Hawkins <truiken@gmail.com>

	* dlls/shell32/shlexec.c:
	shell32: Move a NULL pointer check before the place where we dereference
	the pointer.

	* dlls/msi/action.c, include/msidefs.h:
	msi: Add handling for the StartServices action.

2006-12-01  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/imagehlp/access.c:
	imagehlp: MapAndLoad should do some useful stuff now.

2006-12-01  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/ole32_main.c:
	ole32: Set the mapping mode to anisotropic in OleMetafilePictFromIconAndLabel.

	* dlls/ole32/ole32_main.c:
	ole32: The width of the metafile drawn should be 3 times the icon width in
	OleMetafilePictFromIconAndLabel.

	* dlls/ole32/ole32_main.c:
	ole32: Fill in the xExt and yExt fields in OleMetafilePictFromIconAndLabel.

	* dlls/ole32/ole32_main.c:
	ole32: Use the default icon title font when writing the caption text out in
	OleMetafilePictFromIconAndLabel.

	* dlls/ole32/ole32_main.c:
	ole32: The METAFILEPICT created by OleMetafilePictFromIconAndLabel should have
	its mapping mode be anisotropic, not isotropic.

	* dlls/ole32/ole32_main.c:
	ole32: Call SetWindowOrgEx and SetWindowExtEx in OleMetafilePictFromIconAndLabel
	so that the created metafile scales correctly.
	Centre the icon and the label.

	* dlls/ole32/datacache.c, dlls/ole32/tests/ole2.c:
	ole32: Implement saving of the data cache.
	Document a few of the unknown fields in the presentation data header.

	* dlls/ole32/datacache.c, dlls/ole32/tests/ole2.c:
	ole32: Add handling of the dirty state to the data cache and fix InitNew to
	not call Load.

	* dlls/ole32/datacache.c:
	ole32: Add documentation for CreateDataCache.

	* dlls/ole32/tests/ole2.c:
	ole32: Add some tests for the IViewObject, IOleCache2 and IPersistStorage
	interfaces of the OLE data cache.

	* dlls/ole32/datacache.c:
	ole32: The advise sink for the data cache should be primed with the passed in
	aspects value, not an arbitrarily selected value.

	* dlls/ole32/datacache.c:
	ole32: Implement the SetData function for the data cache.

	* dlls/ole32/datacache.c:
	ole32: Load cached data in the data cache into a STGMEDIUM type so it can be
	treated the same as set data.

	* dlls/ole32/datacache.c:
	ole32: Implement Cache and Uncache for the data cache.

	* dlls/ole32/datacache.c:
	ole32: Create a cache entry for each format in the data cache to allow
	for the future possiblity to add entries with IOleCache::Cache and
	IOleCache::SetData.

	* dlls/ole32/datacache.c:
	ole32: Implement DataCache_GetClassID.

	* include/ole2.h:
	include: Add some missing OLE defines and declarations to ole2.h.

2006-12-01  Pierre d'Herbemont <pdherbemont@free.fr>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Fix elf_load_module params on non elf system to reflect last change
	to its definition.

2006-12-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msacm32/pcmconverter.c:
	msacm32: Make some data const.

2006-12-01  Tomas Carnecky <tom@dbservice.com>

	* dlls/winex11.drv/mouse.c:
	winex11.drv: Don't update the key state table in mouse related functions.

2006-12-01  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d9/device.c:
	d3d9: Remove unreachable return.

2006-11-30  James Hawkins <truiken@gmail.com>

	* dlls/msi/package.c:
	msi: Set the UserSID property.

	* dlls/advapi32/tests/security.c:
	advapi32: Add tests for LookupAccountName.

2006-12-01  Detlef Riekenberg <wine.dev@web.de>

	* dlls/comctl32/propsheet.c:
	comctl32: Do not crash when the startpage is invalid.

2006-12-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/tests/file.c:
	kernel32/tests: Added test case for . and .. directory entries.

	* dlls/kernel32/file.c, dlls/ntdll/directory.c:
	ntdll: Always return . and .. as the first two entries in directory searches.

2006-12-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/loader.c:
	kernel32: Skip the PE loader test under a Win9x platform.

2006-11-30  Peter Beutner <p.beutner@gmx.net>

	* dlls/ntdll/tests/exception.c:
	ntdll: Add more exception tests.

	* dlls/ntdll/tests/exception.c:
	ntdll: Run exception tests from executable memory.

	* dlls/ntdll/tests/exception.c:
	ntdll: Simplify exception tests.
	- create helper function to setup exception frame and run the test
	- lookup function ptr only once
	- make "code data" const
	- reuse global exception counter
	- change alignment test to use stack address to generate an alignment
	exception. This avoids
	the need to pass an argument, so it can use the created helper function.
	(as the stack is (at least) 4 byte aligned, this works equally well)

2006-12-01  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/device.c:
	d3d8: Use correct COM macros.

	* dlls/d3d9/device.c, dlls/d3d9/vertexdeclaration.c:
	d3d9: Use correct COM macros.

	* dlls/wined3d/directx.c:
	wined3d: Remove duplicated code.

	* dlls/ddraw/device.c:
	ddraw: Call wined3d's SetTextureStageState not the one of d3d7.

2006-11-30  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Relax the pixel format attribute conversion code a bit.

2006-11-30  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl:
	mshtml: Added handling of right and left arrow keys in editing mode.

2006-11-30  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/user32/tests/class.c:
	user32: W2K3 returns ERROR_INVALID_PARAMETER.

2006-12-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c:
	ntdll: Don't free the DOS area when a broken app passes a NULL pointer to
	NtFreeVirtualMemory.

2006-11-30  Charles Blacklock <charles@diagnos.co.uk>

	* dlls/oleaut32/tests/vartype.c, dlls/oleaut32/vartype.c:
	oleaut32: Add VarBstrCmp binary comparison for LCID==0.

2006-11-30  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/winetest/send.c:
	winetest: Make sure we can send larger files.

2006-12-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/winedump/dump.c, tools/winedump/lib.c:
	winedump: Restore the COFF library dumper functionality broken by the previous
	change.

2006-11-29  Lei Zhang <thestig@google.com>

	* configure, configure.ac, dlls/msxml3/domdoc.c, include/config.h.in:
	msxml3: Fix compiles for systems with libxml2 version 2.6.14 and below.

2006-11-28  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Load the local monitor only once.

2006-11-29  Vitaliy Margolen <wine-patches@kievinfo.com>

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Look for supported color depths icons only.

2006-11-30  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/device.c, dlls/d3d9/device.c:
	Revert "d3d: Remove AddRef from IWineD3DDevice_GetDirect3D.".
	This reverts commit 167b83c28af73803462e92ee4dcb1a95f194a74d.

	* dlls/d3d8/device.c, dlls/d3d8/swapchain.c, dlls/d3d9/device.c,
	  dlls/d3d9/swapchain.c, dlls/ddraw/ddraw.c, dlls/wined3d/swapchain.c:
	Revert "d3d: Remove AddRef from IWineD3DDevice_GetBackBuffer.".
	This reverts commit 478a414e5820c56fb7bb65d0c41c831932ca26e8.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c:
	Revert "d3d: Remove AddRef from IWineD3DDevice_GetRenderTarget.".
	This reverts commit a7518f6f5494558e80ad125d0b42a46b4744d448.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c:
	Revert "d3d: Remove AddRef from IWineD3DDevice_GetDepthStencilSurface.".
	This reverts commit 18546a65e6e68427ed49c4ea5a601972fb8a4de0.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/ddraw/device.c,
	  dlls/wined3d/device.c:
	Revert "d3d: Remove AddRef from IWineD3DDevice_GetTexture.".
	This reverts commit 274df6ef88fb16da6c61fc891db74042fec0bfc5.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c:
	Revert "d3d: Remove AddRef from IWineD3DDevice_GetStreamSource.".
	This reverts commit 16b1e046d8da9b716975c1c483c149ea3826b690.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c:
	Revert "d3d: Remove AddRef from IWineD3DDevice_GetIndices.".
	This reverts commit 5c4008719c60af52e9370023f09c7b86b7768e85.

	* dlls/d3d9/swapchain.c, dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/surface.c, dlls/wined3d/swapchain.c:
	Revert "d3d: Remove AddRef from IWineD3DDevice_GetSwapChain.".
	This reverts commit f84f687e6d3d8f432de2c5d9b2af13d2c5cedfb2.

	* dlls/wined3d/device.c:
	Revert "d3d: Fix partially applied patch: Remove AddRef from GetDirect3D.".
	Removing COM in d3d is not feasible as long as we use inheritance. So
	stick to the COM refcount rules.
	This reverts commit 3fd8fe089c5337c76c55c4beb74c53576f51776e.

2006-11-30  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c, include/winsock.h:
	ws2_32: Implement SO_EXCLUSIVEADDRUSE for setsockopt.

2006-11-30  Alexandre Julliard <julliard@winehq.org>

	* programs/winecfg/appdefaults.c:
	winecfg: Determine the current Windows version from the standard registry keys.
	Also avoid setting the HKCU\Software\Wine version value when not needed.

	* dlls/comdlg32/filedlg.c, dlls/comdlg32/filedlgbrowser.c,
	  dlls/comdlg32/filedlgbrowser.h:
	comdlg32: Moved prototypes to the header file and fixed declaration of
	FileOpenDlgInfosStr.

2006-11-30  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c:
	ws2_32: SO_DONTROUTE is ignored on windows, fix comment and downgrade FIXME
	to TRACE.

2006-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/Makefile.in, dlls/dbghelp/coff.c, dlls/dbghelp/dbghelp.c,
	  dlls/dbghelp/dwarf.c, dlls/dbghelp/elf_module.c,
	  dlls/dbghelp/image.c, dlls/dbghelp/memory.c, dlls/dbghelp/minidump.c,
	  dlls/dbghelp/module.c, dlls/dbghelp/msc.c, dlls/dbghelp/path.c,
	  dlls/dbghelp/pe_module.c, dlls/dbghelp/stack.c,
	  dlls/dbghelp/symbol.c:
	dbghelp: Get rid of long int issues on 64bit platforms.

	* tools/winedump/Makefile.in, tools/winedump/msc.c, tools/winedump/pdb.c,
	  tools/winedump/winedump.h:
	winedump: Added support for dumping types from PDB, CV... files.

	* tools/winedump/Makefile.in, tools/winedump/dump.c, tools/winedump/pdb.c,
	  tools/winedump/winedump.h:
	winedump: First shot at dumping PDB files contents.

	* dlls/dbghelp/msc.c, include/wine/mscvpdb.h:
	mscvpdb.h: Update some definitions (constants, structures) with latest
	information we have.

	* dlls/dbghelp/coff.c, dlls/dbghelp/msc.c, dlls/dbghelp/mscvpdb.h,
	  include/wine/mscvpdb.h:
	dbghelp: Moved mscvpdb.h file to include/wine to allow sharing of the definitions
	with winedump.

	* tools/winedump/main.c:
	winedump: Make dump mode the default.

	* tools/winedump/dump.c, tools/winedump/emf.c, tools/winedump/main.c,
	  tools/winedump/winedump.h:
	winedump: Dump the EMF files as any other file types.
	Internally, make use of the PRD function for checking available file ranges.

	* tools/winedump/dump.c, tools/winedump/lnk.c, tools/winedump/main.c,
	  tools/winedump/winedump.h, tools/winedump/winedump.man.in:
	winedump: Use same scheme for dumping lnk files as the executables (through
	the PRD macro and a full mapped image).

	* tools/winedump/dump.c, tools/winedump/lib.c, tools/winedump/minidump.c,
	  tools/winedump/pe.c, tools/winedump/winedump.h:
	winedump: Use a uniform scheme for dumping file contents.

	* tools/winedump/debug.c, tools/winedump/dump.c, tools/winedump/pe.c,
	  tools/winedump/pe.h, tools/winedump/winedump.h:
	winedump: Header file pe.h is useless, get rid of it.

	* tools/winedump/dump.c, tools/winedump/le.c, tools/winedump/ne.c,
	  tools/winedump/pe.c, tools/winedump/pe.h, tools/winedump/winedump.h:
	winedump: Changed PE, NE, LE dumping so that they are consistent in terms of
	dump function signatures.
	Avoid passing around the base of the module, but use instead the PRD function.

2006-11-29  James Hawkins <truiken@gmail.com>

	* dlls/advapi32/crypt.c:
	advapi32: Remove redundant NULL checks before CRYPT_Free.

	* dlls/msi/files.c:
	msi: Use mi->source if the source is not a full path.

2006-11-30  Pierre d'Herbemont <pdherbemont@free.fr>

	* dlls/winex11.drv/winex11.drv.spec:
	winex11.drv: Fix SetWindowPos parameters in the spec file.

2006-11-29  Konstantin Kondratyuk <kondratyuk@etersoft.ru>

	* fonts/system.sfd:
	fonts: Add Ukrainian symbols in System font.

	* fonts/courier.sfd:
	fonts: Add ukrainian symbols in Courier.

	* fonts/ms_sans_serif.sfd:
	fonts: Add Ukrainian symbols in MS Sans Serif.

	* fonts/small_fonts.sfd:
	fonts: Add Ukrainian symbols in Small fonts.

2006-11-27  James Hawkins <truiken@gmail.com>

	* dlls/msi/Makefile.in, dlls/msi/action.c:
	msi: Add handling for the InstallODBC action.

	* dlls/msi/files.c:
	msi: Don't fail if we can't remove an existing install file.

2006-11-28  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Add initial tests for AddPort.

	* dlls/winspool.drv/info.c:
	winspool: Implement AddPortA.

	* dlls/winspool.drv/info.c:
	winspool: Implement AddPortW.

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Add initial test for DeletePort.

	* dlls/winspool.drv/info.c:
	winspool: Implement DeletePortA.

	* dlls/winspool.drv/info.c:
	winspool: Implement DeletePortW.

2006-11-26  Pierre d'Herbemont <pdherbemont@free.fr>

	* dlls/user32/driver.c, dlls/user32/message.c, dlls/user32/user_private.h,
	  dlls/user32/winpos.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/winex11.drv.spec, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	user32: Factorize driver's SetWindowPos in user32.

2006-11-27  Christian Gmeiner <christian.gmeiner@students.fhv.at>

	* dlls/setupapi/misc.c, dlls/setupapi/setupapi.spec:
	setupapi: Added AssertFail stub.

2006-11-29  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comdlg32/cdlg32.c, dlls/comdlg32/filedlg.c,
	  dlls/comdlg32/fontdlg.c, dlls/comdlg32/printdlg.c,
	  dlls/comdlg32/printdlg.h, dlls/comdlg32/printdlg16.c:
	comdlg32: Make some data const.

	* dlls/advapi32/registry.c:
	advapi32: Make some data const.

	* dlls/dsound/capture.c:
	dsound: Make some data const.

	* dlls/winedos/devices.c:
	winedos: Make some data const.

	* dlls/riched20/writer.c:
	riched20: Make some data const.

	* dlls/quartz/acmwrapper.c, dlls/quartz/avidec.c, dlls/quartz/main.c,
	  dlls/quartz/transform.c, dlls/quartz/transform.h:
	quartz: Make some data const and static.

	* dlls/mshtml/install.c:
	mshtml: Make some data const.

	* dlls/comctl32/rebar.c:
	comctl32: Make some data const.

	* dlls/winspool.drv/info.c:
	winspool.drv: Make some data const.

	* dlls/urlmon/binding.c:
	urlmon: Make some data const.

	* dlls/shdocvw/navigate.c, dlls/shdocvw/regsvr.c:
	shdocvw: Make some data const.

	* dlls/msi/action.c, dlls/msi/dialog.c, dlls/msi/font.c,
	  dlls/msi/update.c:
	msi: Make some data const and static.

	* dlls/winex11.drv/xfont.c:
	winex11.drv: Make some data const.

	* dlls/ntdll/om.c, dlls/ntdll/path.c:
	ntdll: Make some data const.

2006-11-29  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/dispatcher.c, dlls/secur32/ntlm.c,
	  dlls/secur32/secur32_priv.h:
	secur32: Improve version detection, move all the version detection to ntlm.c.
	Also, as starting with Samba 3.0.24, ntlm_auth will have all the features
	we need, require that as minimal version and remove odd old-version
	compatibility hacks.

2006-11-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	msi: Update the UI in one place only in ACTION_ProcessComponents.

	* dlls/msi/action.c:
	msi: Advertise components of a feature that has the
	msidbFeatureAttributesFavorAdvertise property.

2006-11-28  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Cast-qual warnings fix.

2006-11-28  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c, dlls/ws2_32/tests/sock.c:
	ws2_32: Implement SO_GET_MAX_MSG_SIZE for getsockopt.

2006-11-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msi/msi.spec:
	msi: Synchronize msi exports with what PSDK has.

2006-11-28  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl: Add initial tests for AddPortW.

	* dlls/spoolss/spoolss.spec, dlls/spoolss/spoolss_main.c:
	spoolss: Implement AllocSplStr + DllFreeSplStr.

2006-11-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/winedump/Makefile.in, tools/winedump/dump.c, tools/winedump/lib.c,
	  tools/winedump/main.c, tools/winedump/pe.c,
	  tools/winedump/winedump.h:
	winedump: Add partial COFF library support.

	* dlls/mlang/Makefile.in, dlls/mlang/mlang.c, dlls/mlang/tests/mlang.c:
	mlang: Implement LcidToRfc1766 and GetRfc1766FromLcid.

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/reg.c:
	shlwapi: Make some data const.

	* dlls/oleaut32/oaidl_p.c, dlls/oleaut32/typelib.c, dlls/oleaut32/ungif.c,
	  dlls/oleaut32/usrmarshal.c, dlls/oleaut32/variant.c,
	  dlls/oleaut32/variant.h:
	oleaut32: Make some data const and static.

	* dlls/ole32/compobj.c:
	ole32: Make some data const.

	* dlls/shell32/cpanelfolder.c, dlls/shell32/recyclebin.c,
	  dlls/shell32/shell.c, dlls/shell32/shfldr_desktop.c,
	  dlls/shell32/shfldr_fs.c, dlls/shell32/shpolicy.c,
	  dlls/shell32/xdg.c:
	shell32: Make some data static and const.

	* dlls/user32/cursoricon.c, dlls/user32/spy.c, dlls/user32/static.c:
	user32: Make some data const.

	* dlls/kernel32/lzexpand.c:
	kernel32: Make some data const.

	* tools/winedump/debug.c, tools/winedump/pe.c:
	winedump: Make some data const.

	* dlls/kernel32/tests/loader.c:
	kernel32: Add more obscure PE images that XP is able to load.

2006-11-27  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Set the initial FBO depth stencil when creating the device.

	* dlls/wined3d/device.c:
	wined3d: Delete the device's FBO when destroying the device.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Use the texture sampling function in a few more instructions (GLSL).

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Use the texture sampling function in a few more instructions (ARB
	asm shaders).

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Fix the texm3x3tex instruction to sample properly.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Create a separate function for sampling a texture.

	* dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Select the right shader backend when creating the device.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move some code specific to the different shader backends into the
	respective source files.

2006-11-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/appsearch.c:
	msi: Use MSI_IterateRecords in ACTION_AppSearch.

	* dlls/msi/appsearch.c:
	msi: Use MSI_QueryGetRecord in ACTION_AppSearchIni.

	* dlls/msi/appsearch.c:
	msi: Use MSI_QueryGetRecord in ACTION_AppSearchDr.

2006-11-28  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c:
	riched20: Make EM_SETPARAFORMAT use ME_RewrapRepaint instead of ME_UpdateRepaint.

	* dlls/riched20/editor.c:
	riched20: Make EM_SETCHARFORMAT call ME_RewrapRepaint instead of
	ME_UpdateRepaint.

	* dlls/riched20/editor.c:
	riched20: Make WM_SETFONT call RewrapRepaint instead of UpdateRepaint.

2006-11-27  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c:
	riched20: EM_EXLIMITTEXT: ignore wParam and properly cast lParam.

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Make ME_StreamIn create undos properly.

2006-11-27  Frank Richter <frank.richter@gmail.com>

	* programs/winecfg/De.rc:
	winecfg: Update German translation.

2006-11-27  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Add WS_SIO_ADDRESS_LIST_QUERY stub to make native dplay error output
	more readable.

2006-11-27  Francois Gouget <fgouget@free.fr>

	* dlls/mshtml/editor.c:
	mshtml: Add missing '\n' in Wine trace.

2006-11-27  Francois Gouget <fgouget@codeweavers.com>

	* programs/cmdlgtst/Pt.rc:
	cmdlgtst: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/oledlg/oledlg_Pt.rc:
	oledlg: Add a Portuguese translation (contributed by Americo Jose Melo).

	* programs/regedit/Pt.rc:
	regedit: Add a Portuguese translation (contributed by Americo Jose Melo).

	* programs/wineconsole/wineconsole_Pt.rc:
	wineconsole: Add a Portuguese translation (contributed by Americo Jose Melo).

	* programs/winefile/Pt.rc:
	winefile: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/shell32/shell32_Pt.rc:
	shell32: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/shdocvw/Pt.rc:
	shdocvw: Add a Portuguese translation (contributed by Americo Jose Melo).

	* programs/winecfg/Pt.rc:
	winecfg: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/winmm/winmm_Pt.rc:
	winmm: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/wininet/wininet_Pt.rc:
	wininet: Add a Portuguese translation (contributed by Americo Jose Melo).

	* programs/winemine/Pt.rc:
	winemine: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/user32/resources/user32_Pt.rc:
	user32: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/shlwapi/shlwapi_Pt.rc:
	shlwapi: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/msrle32/msrle_Pt.rc:
	msrle32: Add a Portuguese translation (contributed by Americo Jose Melo).

2006-11-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/server.c:
	ntdll: Unset the WINESERVERSOCKET variable after we have retrieved it.

2006-11-27  Pierre d'Herbemont <pdherbemont@free.fr>

	* include/winsock.h:
	winsock: Get rid of already disabled WS prefix, thus fix Wine compilation
	on big-endian.

2006-11-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/ws2_32/socket.c, include/mswsock.h, include/winsock2.h:
	winsock: Add WS_ prefix on WSAIoctl constants.

2006-11-25  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dwarf.c:
	dbghelp: Silence typedefs children in sub program block.

2006-11-24  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/debugger.h, programs/winedbg/memory.c,
	  programs/winedbg/types.c:
	winedbg: Added basic support for printing 64bit wide entities.

	* programs/winedbg/memory.c, programs/winedbg/types.c:
	winedbg: Host references lookup.
	Since more and more information in now available through the CPU
	registers, those require DLV_HOST access to be a bit better handled
	than it is...

	* programs/winedbg/debugger.h, programs/winedbg/memory.c,
	  programs/winedbg/stack.c, programs/winedbg/symbol.c:
	winedbg: Various information printing issues.
	- in backtraces, (void) functions should be listed with '()' as arguments
	instead of ''
	- factorized code for diplaying information about a local/parameter
	- fixed a couple of bugs here
	- rewrote format specifiers for print commands (do no waste space for padding
	data)
	- added support for new wine's dbghelp extension for local/parameter
	variables being out of scope

	* dlls/dbghelp/elf_module.c:
	dbghelp: Removed the alpha status FIXME for the dwarf code.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Correctly store the addresses of blocks.
	They are stored internally as offsets to the start of the function
	which embeds the block.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Properly handle the void type in some declarations.

	* dlls/dbghelp/dwarf.c:
	dbghelp: We can now remove the default name prefix as all the non conforming
	cases have been eliminated.
	Got rid of dwarf2_find_name which is now useless.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Extend support for inlined functions and handle them as generic blocks
	inside functions
	(except for parameters which are converted into local variables).
	Rewrote dwarf2_find_attribute so that it takes into account the
	abstract origin information when available.
	A+

	* dlls/dbghelp/dwarf.c, dlls/dbghelp/type.c:
	dbghelp: Be a bit more strict on where we do actually expect default names to
	be generated
	(removed this feature for UDTs, structures' fields, enums, typedefs, compilands)

	* dlls/dbghelp/dwarf.c:
	dbghelp: Add support for a label in a subprogram block.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Register numbers in OP_piece don't need to be next to each other.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Add support for deref operation in location computation.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Add ability to add a SymTagCustom element to a function.
	Make use of it to store the frame information for a dwarf function
	(either because frame's location is a location list, or because one of
	the function's variables is not properly computed at parse time).

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/msc.c, dlls/dbghelp/stabs.c, dlls/dbghelp/symbol.c,
	  dlls/dbghelp/type.c:
	dbghelp: Function points location is now expressed as a struct location.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/symbol.c:
	dbghelp: Added infrastructure to compute variable location at runtime (as
	opposed to debug info parse time).
	Use it to send the variables depending on not known frame register at parse time.
	Made just a stub for the location computation function for dwarf2.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/elf_module.c, dlls/dbghelp/msc.c, dlls/dbghelp/stabs.c,
	  dlls/dbghelp/symbol.c, dlls/dbghelp/type.c:
	dbghelp: Use the location info structure thoughout the code to handle the
	location of a data variable.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c:
	dbghelp: Added struct location to help computing a location.
	Make use of it in dwarf.c to handle correctly variable location computation.
	Split code to handle both location with parse time computation
	(current code) and yet to come run-time computation

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/elf_module.c, dlls/dbghelp/module.c:
	dbghelp: Pass .debug_loc section info from the ELF loader to the dwarf parser.

	* dlls/dbghelp/coff.c, dlls/dbghelp/dbghelp_private.h,
	  dlls/dbghelp/dwarf.c, dlls/dbghelp/elf_module.c, dlls/dbghelp/msc.c,
	  dlls/dbghelp/stabs.c, dlls/dbghelp/symbol.c, dlls/dbghelp/type.c:
	dbghelp: Store compiland's address in internal structures.

	* dlls/dbghelp/symbol.c:
	dbghelp: When looking up for a local variable (or parameter), pass the function
	pointer.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c,
	  dlls/dbghelp/source.c, dlls/dbghelp/symbol.c, dlls/dbghelp/type.c:
	dbghelp: Added a process field to the modules pair structure.
	This makes the code simpler to read, a bit more efficient, and
	furthermore it'll be needed in future patches.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/elf_module.c:
	dbghelp: Simplify code with function to get section size.

2006-11-26  Kirill K. Smirnov <lich@math.spbu.ru>

	* dlls/ole32/storage32.c:
	ole32: Fix logic in Storage32Impl_SmallBlocksToBigBlocks function.

2006-11-24  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/crypt32/tests/main.c:
	crypt32: Add test for I_CryptInstallOssGlobal.

	* dlls/crypt32/main.c:
	crypt32: Better stub for I_CryptInstallOssGlobal.

2006-11-24  Vitaliy Margolen <wine-patches@kievinfo.com>

	* tools/wineshelllink:
	wineshelllink: Use FreeDesktop standard to create Wine menu structure.

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Downgrade some ERR to WARN.

2006-11-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/tests/bitmap.c, dlls/winex11.drv/dib.c:
	winex11.drv: Don't use the specified DC when mapping RGB colors for a DIB.
	The DC palette only matters for DIB_PAL_COLORS.

2006-11-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winex11.drv/pen.c:
	winex11.drv: Cast-qual warnings fix.

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Cast-qual warnings fix.

	* dlls/winex11.drv/clipboard.c:
	winex11.drv: Cast-qual warnings fix.

2006-11-25  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/winex11.drv/mouse.c:
	winex11drv: State of side mouse buttons (X-buttons) is not returned from
	XQueryPointer.

2006-11-10  Francois Gouget <fgouget@codeweavers.com>

	* programs/winepath/winepath.c:
	winepath: Fix --unix so it works whether the Windows path refers to an existing
	file/directory or not.

2006-11-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/gphoto2.ds/gphoto2_i.h:
	gphoto2.ds: Don't warn about libjpeg if gphoto support is not enabled.

2006-11-18  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Unify pixel format code.

2006-11-27  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/appsearch.c:
	msi: Use MSI_QueryGetRecord in ACTION_AppSearchReg.

	* dlls/msi/appsearch.c:
	msi: Use MSI_QueryGetRecord in ACTION_AppSearchComponents.

	* dlls/msi/appsearch.c:
	msi: Use MSI_QueryGetRecord in ACTION_AppSearchGetSignature.

	* dlls/msi/package.c:
	msi: Use MSI_IterateRecords when cloning properties.

2006-11-25  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/riched20/paint.c:
	riched20: Only send EN_CHANGE when it is supposed to be sent.

2006-11-26  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/winedump/symbol.c:
	winedump: Constify some data.

	* tools/winedump/lnk.c:
	winedump: Fix a copy/paste typo.

	* tools/winedump/le.c:
	winedump: Remove a not needed include.

	* tools/winedump/dump.c:
	winedump: Make the implementation match the prototype.

	* include/winnt.h:
	include: Add some structures a definitions required for the COFF library dumper.

2006-11-26  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/oleview/No.rc, programs/oleview/rsrc.rc:
	oleview: Add Norwegian Bokmål translation.

	* programs/winecfg/No.rc:
	winecfg: Updated Norwegian Bokmål translation.

2006-11-26  Kevin Koltzau <kevin@plop.org>

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Process browser and multimedia key events.

	* dlls/user32/defwnd.c, dlls/user32/message.c:
	user32: Generate WM_APPCOMMAND messages for browser and multimedia keys.

	* include/winuser.h:
	winuser.h: Add some HSHELL and APPCOMMAND defines.

	* dlls/user32/spy.c, include/winuser.h:
	winuser.h: Define browser and multimedia keys.

2006-11-25  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/loader.c:
	kernel32: Improve the PE loader test.

2006-11-24  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Cast-qual warnings fix.

	* dlls/wined3d/device.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Cast-qual warnings fix.

	* dlls/wined3d/baseshader.c:
	wined3d: Cast-qual warnings fix.

2006-11-24  Francois Gouget <fgouget@codeweavers.com>

	* dlls/msi/msi_Pt.rc:
	msi: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/msacm32/msacm_Pt.rc:
	msacm32: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/mpr/mpr_Pt.rc:
	mpr: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/comdlg32/cdlg_Pt.rc:
	comdlg32: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/comctl32/comctl_Pt.rc:
	comctl32: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/avifil32/avifile_Pt.rc:
	avifil32: Add a Portuguese translation (contributed by Americo Jose Melo).

2006-11-24  Alexandre Julliard <julliard@winehq.org>

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

----------------------------------------------------------------
2006-11-22  Markus Amsler <markus.amsler@oribi.org>

	* dlls/wined3d/device.c:
	d3d: Fix partially applied patch: Remove AddRef from GetDirect3D.

2006-11-24  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Simplify the code that finds the offset of the given linux event.

2006-11-24  Marcus Meissner <marcus@jet.franken.de>

	* dlls/oleaut32/oleaut.c:
	oleaut32: Protect against integer overflow in SysAllocStringLen.

2006-11-23  Francois Gouget <fgouget@free.fr>

	* dlls/msvcrt/tests/data.c:
	msvcrt/tests: We cannot link with _initterm() with Visual C++, so we have to
	load it dynamically.

2006-11-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winmm/wineoss/dscapture.c:
	winmm/wineoss: Cast-qual warning fix.

	* dlls/ws2_32/socket.c:
	ws2_32: Cast-qual warnings fix.

	* dlls/winspool.drv/info.c:
	winspool.drv: Cast-qual warning fix + make function static.

2006-11-23  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Add test for DeletePort.

	* dlls/localspl/localmon.c:
	localspl: Implement DeletePort.

2006-11-24  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advpack/tests/advpack.c:
	advpack: Remove test that crashes on systems with IE7.

2006-11-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/editor.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl,
	  dlls/mshtml/olecmd.c:
	mshtml: Added Exec(IDM_FONTSIZE) implementation.

	* dlls/mshtml/nsembed.c:
	mshtml: Added missing break.

2006-11-23  Marcus Meissner <marcus@jet.franken.de>

	* dlls/kernel32/tests/codepage.c:
	kernel32/tests: Test -1 length for NULL ptr too.

2006-11-23  Francois Gouget <fgouget@codeweavers.com>

	* dlls/comdlg32/cdlg_Pt.rc:
	comdlg32: Moved a FIXME out of the user-visible string.

	* dlls/serialui/Pt.rc:
	serialui: Update the Portuguese translation (contributed by Americo Jose Melo).

	* programs/notepad/Pt.rc, programs/progman/Pt.rc, programs/start/Pt.rc,
	  programs/view/Pt.rc, programs/winhelp/Pt.rc:
	programs: Update the Portuguese translation (contributed by Americo Jose Melo).

	* dlls/avifil32/avifile_Pt.rc, dlls/comctl32/comctl_Pt.rc,
	  dlls/comdlg32/cdlg_Pt.rc, dlls/mpr/mpr_Pt.rc,
	  dlls/msacm32/msacm_Pt.rc, dlls/msi/msi_Pt.rc,
	  dlls/msrle32/msrle_Pt.rc, dlls/oleaut32/oleaut32_No.rc,
	  dlls/oleaut32/oleaut32_Pt.rc, dlls/oledlg/oledlg_Pt.rc,
	  dlls/shdocvw/Pt.rc, dlls/shell32/shell32_Pt.rc,
	  dlls/shlwapi/shlwapi_Pt.rc, dlls/user32/resources/user32_Pt.rc,
	  dlls/wineps.drv/wps_Pt.rc, dlls/wininet/wininet_Pt.rc,
	  dlls/winmm/winmm_Pt.rc, programs/winecfg/Pt.rc,
	  programs/wineconsole/wineconsole_Pt.rc:
	Replace SUBLANG_DEFAULT with the specific SUBLANG_XXX constant for languages
	that have multiple sublanguages.

2006-11-23  Francois Gouget <fgouget@free.fr>

	* dlls/user32/tests/dce.c, dlls/user32/tests/menu.c,
	  dlls/user32/tests/win.c:
	user32/tests: Remove unneeded NONAMELESS* macros.

	* dlls/msvcrt/tests/data.c, dlls/msvcrt/tests/file.c:
	msvcrt/tests: The tests must not include msvcrt.h because it contains
	declarations that may be incompatible with the PSDK headers.

	* dlls/comctl32/tests/dpa.c:
	comctl32/tests: Fix the CheckDPA() tests.
	There is no guarantee that the compiler will compute the function arguments
	in left-to-right order.

	* dlls/shlwapi/tests/string.c:
	shlwapi/tests: Remove unneeded NONAMELESS* macros.

	* dlls/shell32/tests/string.c:
	shell32/tests: Don't use the NONAMELESS* macros in the tests.

	* dlls/mapi32/tests/imalloc.c, dlls/mapi32/tests/prop.c,
	  dlls/mapi32/tests/util.c:
	mapi32/tests: Remove unneeded NONAMELESS* macros.

	* dlls/dsound/tests/capture.c, dlls/dsound/tests/ds3d.c,
	  dlls/dsound/tests/ds3d8.c, dlls/dsound/tests/dsound.c,
	  dlls/dsound/tests/dsound8.c, dlls/dsound/tests/duplex.c,
	  dlls/dsound/tests/propset.c:
	dsound/tests: Remove unneeded NONAMELESS* macros.

	* dlls/dinput/tests/joystick.c, dlls/dinput/tests/keyboard.c,
	  dlls/dinput/tests/mouse.c:
	dinput/tests: Remove unneeded NONAMELESS* macros.

	* dlls/comctl32/tests/propsheet.c:
	comctl32/tests: Don't use the NONAMELESS* macros in the tests.

2006-11-22  Francois Gouget <fgouget@codeweavers.com>

	* dlls/shell32/shlexec.c:
	shell32: Remove unused parameters from SHELL_FindExecutableByOperation().

2006-11-23  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

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

2006-11-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winmm/playsound.c:
	winmm: Cast-qual warnings fix.

	* dlls/winmm/mci.c:
	winmm: Cast-qual warnings fix.

2006-11-20  Vitaliy Margolen <wine-patches@kievinfo.com>

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Use 'start.exe' to launch non .exe files.

2006-11-21  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wininet/internet.c:
	wininet: Cast-qual warnings fix.

2006-11-22  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/helpers.c, dlls/msi/tests/package.c:
	msi: Treat the SourceDir folder the same as TargetDir.

	* dlls/msi/action.c, dlls/msi/helpers.c, dlls/msi/msipriv.h:
	msi: Load all folders in one query, rather one per query.

2006-11-21  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/kernel32/locale.c:
	kernel32: Restore C locale for LC_NUMERIC.

2006-11-20  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d9/swapchain.c, dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/surface.c, dlls/wined3d/swapchain.c:
	d3d: Remove AddRef from IWineD3DDevice_GetSwapChain.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c:
	d3d: Remove AddRef from IWineD3DDevice_GetIndices.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c:
	d3d: Remove AddRef from IWineD3DDevice_GetStreamSource.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/ddraw/device.c,
	  dlls/wined3d/device.c:
	d3d: Remove AddRef from IWineD3DDevice_GetTexture.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c:
	d3d: Remove AddRef from IWineD3DDevice_GetDepthStencilSurface.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c:
	d3d: Remove AddRef from IWineD3DDevice_GetRenderTarget.

	* dlls/d3d8/device.c, dlls/d3d8/swapchain.c, dlls/d3d9/device.c,
	  dlls/d3d9/swapchain.c, dlls/ddraw/ddraw.c, dlls/wined3d/swapchain.c:
	d3d: Remove AddRef from IWineD3DDevice_GetBackBuffer.

	* dlls/d3d8/device.c, dlls/d3d9/device.c:
	d3d: Remove AddRef from IWineD3DDevice_GetDirect3D.

2006-11-22  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/custom.c:
	msi: Only wait for custom actions that don't have msidbCustomActionTypeContinue
	specified.

	* dlls/msi/custom.c:
	msi: Split process_action_return_value into two different functions.

	* dlls/msi/custom.c:
	msi: Remove an unused parameter.

2006-11-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/static.c:
	user32: Restore the len == 0 check which got lost in a previous patch.

2006-11-21  Huw Davies <huw@codeweavers.com>

	* dlls/ole32/hglobalstream.c, dlls/ole32/marshal.c,
	  dlls/ole32/memlockbytes.c, dlls/ole32/memlockbytes16.c:
	ole32: Spelling fixes.

	* dlls/ole32/marshal.c, dlls/ole32/tests/marshal.c:
	ole32: CoGetInterfaceAndReleaseStream shouldn't crash when passed a NULL stream.

2006-11-21  Marcus Meissner <marcus@jet.franken.de>

	* dlls/shell32/systray.c:
	shell32: Pass number of wide chars, not bytes as last argument to MBtoWC().

2006-11-21  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: RPC_C_AUTHN_LEVEL_NONE and RPC_C_AUTHN_LEVEL_DEFAULT are
	handled at the binding level now instead of the message level, so
	remove this special handling in RPCRT4_Send.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Allow applications to specify authentication levels other than connect
	in RpcBindingSetAuthInfoA/W.
	Map the default authentication level and service to sane values.
	Don't create an RpcAuthInfo object if RPC_C_AUTHN_LEVEL_NONE is specified.

2006-11-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/server.c:
	ntdll: Setting the needs_close flag in server_get_unix_fd got lost in the
	previous change.

2006-11-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/static.c, dlls/user32/tests/msg.c:
	user32: Add a rudimentary WM_SETFONT message test for the static control,
	make it pass under Wine.

2006-11-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/comctl32/tooltips.c:
	comctl32: Remove invalid NULL check.

2006-11-21  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ntdll/tests/string.c:
	ntdll: Remove unused variables.

	* dlls/ntdll/tests/string.c:
	ntdll: Use intended variable.

	* dlls/ntdll/tests/string.c:
	ntdll: Remove tests that crash on XP and W2K3.

	* dlls/ntdll/tests/string.c:
	ntdll: Remove unused variables.

	* dlls/ntdll/tests/string.c:
	ntdll: Remove tests that crash on XP and W2K3.

2006-11-19  Vitaliy Margolen <wine-patches@kievinfo.com>

	* programs/winecfg/Cs.rc, programs/winecfg/It.rc, programs/winecfg/Pt.rc,
	  programs/winecfg/driveui.c, programs/winecfg/resource.h:
	winecfg: Remove some old dead code and associated language resources.

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

2006-11-19  Matthew Kehrer <kehrermatt@gmail.com>

	* include/.gitignore, include/Makefile.in, include/ocmm.idl:
	mshtml: Add basic support for ITimer interface.

2006-11-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/dde_client.c, dlls/user32/dde_misc.c,
	  dlls/user32/dde_private.h, dlls/user32/dde_server.c:
	user32: Add support for DdeEnableCallback(EC_DISABLE) command.

2006-11-21  Mike McCormack <mike@codeweavers.com>

	* dlls/riched20/reader.c:
	riched20: Simplify an array size calculation.

	* dlls/msi/helpers.c, dlls/msi/tests/format.c:
	msi: Fix use of integer fields in MsiFormatRecord.

	* dlls/msi/record.c, dlls/msi/tests/record.c:
	msi: Test MsiRecordGetString on an integer record fields with a NULL output
	buffer.

	* dlls/msi/tests/format.c:
	msi: Add a test for formatting records with strings.

	* dlls/msi/dialog.c:
	msi: Don't access the list of controls after the dialog is destroyed.

	* dlls/msi/dialog.c:
	msi: Create a function to free control data.

	* dlls/msi/dialog.c:
	msi: Fix an access after freeing memory.

2006-11-20  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wineconsole/wineconsole_No.rc:
	wineconsole: Updated Norwegian Bokmål translation.

	* programs/regedit/No.rc:
	regedit: Updated Norwegian Bokmål translation.

2006-11-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/msg.c:
	user32: Add some optional messages to the button message test.

2006-11-20  Huw Davies <huw@codeweavers.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Set the result to IDOK on 'Finish'.

2006-11-21  Alexandre Julliard <julliard@winehq.org>

	* programs/winecfg/audio.c:
	winecfg: Don't try to load the arts driver, the arts library is too buggy.

2006-11-18  Vitaliy Margolen <wine-patches@kievinfo.com>

	* programs/winecfg/Bg.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Hu.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Tr.rc,
	  programs/winecfg/resource.h, programs/winecfg/theme.c:
	winecfg: Add ability to change colors and non-client sizes.

	* programs/winecfg/Bg.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Hu.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Tr.rc:
	winecfg: Move controls on "Desktop Integration" tab to make more room for the
	next patch.

2006-11-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c:
	ntdll: Don't bother with async I/O on regular files.

	* dlls/ntdll/cdrom.c, dlls/ntdll/directory.c, dlls/ntdll/file.c,
	  dlls/ntdll/ntdll_misc.h, dlls/ntdll/serial.c, dlls/ntdll/server.c,
	  dlls/ntdll/tape.c, dlls/ntdll/virtual.c:
	ntdll: Store the fd type in the cache and return it in server_get_unix_fd.

	* include/wine/server_protocol.h, server/change.c, server/fd.c,
	  server/file.c, server/file.h, server/mailslot.c, server/named_pipe.c,
	  server/protocol.def, server/serial.c, server/sock.c, server/trace.c:
	server: Return an fd type in the get_handle_fd request.

2006-11-19  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/kernel32/nls/nor.nls, dlls/localspl/localspl.rc,
	  dlls/localspl/spl_No.rc, dlls/oledlg/oledlg_No.rc:
	Updated Norwegian Bokmål translations.

2006-11-17  Ken Thomases <ken@codeweavers.com>

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Correct the count of characters matching with layout.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Enable code for picking layout-independent vkey as second pass.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Changed indenting of some dead code.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Move some dead code from inside a loop to just after the loop.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Replace no-longer-existent VK_A, VK_Z, VK_0, and VK_9 constants.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Track which vkeys have already been assigned to keycodes.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Reset the keyc2vkey table to empty before rebuilding it.

2006-11-20  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	msi: Split msi_set_sourcedir_props into a separate function.

	* dlls/msi/action.c:
	msi: Spelling fixes.

	* dlls/msi/tests/package.c:
	msi: Add another test for the SourceDir property.

	* dlls/msi/files.c:
	msi: Clean up parameters of msi_media_get_disk_info().

	* dlls/msi/files.c:
	msi: Fix some memory leaks.

	* dlls/msi/files.c:
	msi: Don't leak row handles.

2006-11-19  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel32/tests/path.c:
	kernel32/tests: Avoid crash on Win95 (GetLongPathNameW).

	* dlls/kernel32/tests/process.c:
	kernel32/tests: Load tests on Win9x again (VirtualAllocEx+VirtualFreeEx).

2006-11-18  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* tools/wine.inf:
	wine.inf: Add setupapi to fake dlls.

2006-11-18  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Only copy the depth buffer if there is one.

	* dlls/wined3d/device.c:
	wined3d: Make sure render target textures aren't bound when we start drawing.

	* dlls/wined3d/device.c:
	wined3d: Support cube map FBO attachments.

	* dlls/wined3d/baseshader.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_gl.h:
	wined3d: Fix GL_ARB_texture_cube_map extension support.

2006-11-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/winmm/message16.c:
	winmm: Avoid using sizeof() in traces.

2006-11-17  James Hawkins <truiken@gmail.com>

	* dlls/kernel32/lzexpand.c:
	kernel32: Replace magic numbers with descriptive defines.

2006-11-18  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user32/hook.c:
	user32: Cast-qual warnings fix.

	* dlls/user32/edit.c:
	user32: Cast-qual warnings fix.

	* dlls/user32/dialog.c:
	user32: Cast-qual warnings fix.

	* dlls/user32/dde_client.c:
	user32: Cast-qual warnings fix.

2006-11-18  Marcus Meissner <marcus@jet.franken.de>

	* dlls/ntdll/tape.c:
	ntdll: Converted bitmask into TRUE/FALSE.

	* dlls/kernel32/locale.c:
	kernel32: Added missing shift by 8.

2006-11-17  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_private.h, dlls/wined3d/wined3d_private_types.h:
	wined3d: Allow the depth buffer to be shared between onscreen and offscreen
	rendering modes.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_main.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add FBO support for offscreen rendering.

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_main.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Make the offscreen render mode a registry setting.

	* dlls/wined3d/utils.c, include/wine/wined3d_gl.h:
	wined3d: Fix depth buffer formats to use actual depth textures.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Rename renderUpsideDown to render_offscreen.

2006-11-17  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c:
	msxml3: Implement createElement.

2006-11-17  Hans Leidekker <hans@it.vu.nl>

	* dlls/setupapi/tests/query.c:
	setupapi: Add tests for SetupGet{SourceFileLocation, SourceInfo, TargetPath}.

2006-11-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsiface.idl:
	mshtml: Remove nscstring and nscwstring typedefs.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/htmlstylesheet.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added semi-stub createStyleSheet implementation.

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

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

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

	* dlls/mshtml/htmlelem.c, dlls/mshtml/htmlstyle.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl:
	mshtml: Store nsIDOMCSSStyleDeclaration in HTMLStyle.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmlstyle.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added get_style implementation.

2006-11-17  Alexandre Julliard <julliard@winehq.org>

	* include/Makefile.in:
	include: Install adshlp.h too.

	* dlls/wineps.drv/escape.c, dlls/wineps.drv/init.c,
	  dlls/winspool.drv/info.c, include/heap.h:
	include: Get rid of heap.h.

	* dlls/gdi32/bidi.c, dlls/gdi32/bitblt.c, dlls/gdi32/bitmap.c,
	  dlls/gdi32/brush.c, dlls/gdi32/clipping.c, dlls/gdi32/dc.c,
	  dlls/gdi32/dib.c, dlls/gdi32/driver.c, dlls/gdi32/enhmetafile.c,
	  dlls/gdi32/enhmfdrv/bitblt.c, dlls/gdi32/enhmfdrv/enhmetafiledrv.h,
	  dlls/gdi32/enhmfdrv/graphics.c, dlls/gdi32/enhmfdrv/init.c,
	  dlls/gdi32/enhmfdrv/objects.c, dlls/gdi32/env.c, dlls/gdi32/font.c,
	  dlls/gdi32/freetype.c, dlls/gdi32/gdi16.c, dlls/gdi32/gdi_main.c,
	  dlls/gdi32/gdi_private.h, dlls/gdi32/gdiobj.c, dlls/gdi32/mapping.c,
	  dlls/gdi32/metafile.c, dlls/gdi32/metafile16.c,
	  dlls/gdi32/mfdrv/bitblt.c, dlls/gdi32/mfdrv/graphics.c,
	  dlls/gdi32/mfdrv/init.c, dlls/gdi32/mfdrv/mapping.c,
	  dlls/gdi32/mfdrv/metafiledrv.h, dlls/gdi32/mfdrv/objects.c,
	  dlls/gdi32/opengl.c, dlls/gdi32/painting.c, dlls/gdi32/palette.c,
	  dlls/gdi32/path.c, dlls/gdi32/pen.c, dlls/gdi32/printdrv.c,
	  dlls/gdi32/region.c, dlls/gdi32/wing.c, dlls/winex11.drv/x11ddraw.c,
	  dlls/winex11.drv/xrender.c, include/gdi.h, include/wingdi.h:
	gdi32: Get rid of the gdi.h include.

	* dlls/gdi32/gdi32.spec, dlls/gdi32/gdi_private.h, include/gdi.h:
	gdi32: Stop exporting GDI_GetObjPtr and GDI_ReleaseObj.

	* dlls/winex11.drv/palette.c, dlls/winex11.drv/winex11.drv.spec:
	winex11.drv: Store the palette mapping in an X context instead of the GDI object.

	* dlls/gdi32/driver.c, dlls/gdi32/enhmfdrv/init.c,
	  dlls/gdi32/gdi_private.h, dlls/gdi32/mfdrv/init.c,
	  dlls/gdi32/palette.c, include/gdi.h:
	gdi32: Get rid of the palette mapping handling and leave it up to the driver.

	* dlls/winex11.drv/palette.c:
	winex11.drv: Abstract accesses to the palette color mapping.

	* dlls/winex11.drv/palette.c:
	winex11.drv: Avoid some direct accesses to the PALETTEOBJ structure.

	* dlls/gdi32/palette.c, dlls/winex11.drv/palette.c, include/gdi.h:
	gdi32: Moved the system palette flags to winex11.drv.

	* dlls/gdi32/dib.c:
	gdi32: Avoid accessing the internal palette object from dib.c.

	* dlls/d3d9/d3d9_private.h:
	d3d9: Include wingdi.h, not gdi.h.

2006-11-16  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/urlmon/urlmon_main.c:
	urlmon: Cast-qual warnings fix.

2006-11-16  Vitaliy Margolen <wine-patches@kievinfo.com>

	* programs/winecfg/drive.c:
	winecfg: Allow editing of broken drive links.

2006-11-16  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/msvcrt/msvcrt.spec:
	msvcrt: Add _fstat64 and _stat64 to msvcrt.spec.

2006-11-17  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	msi: Fix a memory leak in load_folder().

	* dlls/msi/custom.c:
	msi: Remove unnecessary includes.

	* dlls/msi/helpers.c:
	msi: Remove a level of indent in resolve_folder().

	* dlls/msi/tests/package.c:
	msi: Add a test showing the _Properties table is a bit strange.

	* dlls/msi/tests/db.c:
	msi: Add a test showing which tables are special.

	* dlls/msi/helpers.c:
	msi: Remove some redundant else statements.

2006-11-16  Kevin Koltzau <kevin@plop.org>

	* tools/winedump/pe.c:
	winedump: Print new DLL characteristics.

	* include/winnt.h:
	winnt.h: Add AMD64 relocation types.

	* include/winnt.h:
	winnt.h: Add defines for new DLL characteristics.

2006-11-16  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/Makefile.in, dlls/msxml3/domdoc.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/pi.c:
	msxml3: Implement createProcessingInstruction with a stub PI object.

2006-11-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/lcformat.c, dlls/kernel32/locale.c, dlls/kernel32/time.c:
	kernel32: Use the appropriate Unix locale for GetLocaleInfo when a default
	LCID is used.
	For instance LOCALE_SDATE is looked up in the lcid corresponding to
	LC_TIME, LOCALE_IDIGITS in the LC_NUMERIC lcid, etc.

	* dlls/kernel32/nls/afk.nls, dlls/kernel32/nls/ara.nls,
	  dlls/kernel32/nls/arb.nls, dlls/kernel32/nls/are.nls,
	  dlls/kernel32/nls/arg.nls, dlls/kernel32/nls/arh.nls,
	  dlls/kernel32/nls/ari.nls, dlls/kernel32/nls/arj.nls,
	  dlls/kernel32/nls/ark.nls, dlls/kernel32/nls/arl.nls,
	  dlls/kernel32/nls/arm.nls, dlls/kernel32/nls/aro.nls,
	  dlls/kernel32/nls/arq.nls, dlls/kernel32/nls/ars.nls,
	  dlls/kernel32/nls/art.nls, dlls/kernel32/nls/aru.nls,
	  dlls/kernel32/nls/ary.nls, dlls/kernel32/nls/aze.nls,
	  dlls/kernel32/nls/azl.nls, dlls/kernel32/nls/bel.nls,
	  dlls/kernel32/nls/bgr.nls, dlls/kernel32/nls/brf.nls,
	  dlls/kernel32/nls/cat.nls, dlls/kernel32/nls/chs.nls,
	  dlls/kernel32/nls/cht.nls, dlls/kernel32/nls/cor.nls,
	  dlls/kernel32/nls/csy.nls, dlls/kernel32/nls/cym.nls,
	  dlls/kernel32/nls/dan.nls, dlls/kernel32/nls/dea.nls,
	  dlls/kernel32/nls/dec.nls, dlls/kernel32/nls/del.nls,
	  dlls/kernel32/nls/des.nls, dlls/kernel32/nls/deu.nls,
	  dlls/kernel32/nls/div.nls, dlls/kernel32/nls/ell.nls,
	  dlls/kernel32/nls/ena.nls, dlls/kernel32/nls/enb.nls,
	  dlls/kernel32/nls/enc.nls, dlls/kernel32/nls/eng.nls,
	  dlls/kernel32/nls/eni.nls, dlls/kernel32/nls/enj.nls,
	  dlls/kernel32/nls/enl.nls, dlls/kernel32/nls/enp.nls,
	  dlls/kernel32/nls/ens.nls, dlls/kernel32/nls/ent.nls,
	  dlls/kernel32/nls/enu.nls, dlls/kernel32/nls/enw.nls,
	  dlls/kernel32/nls/enz.nls, dlls/kernel32/nls/eox.nls,
	  dlls/kernel32/nls/esa.nls, dlls/kernel32/nls/esb.nls,
	  dlls/kernel32/nls/esc.nls, dlls/kernel32/nls/esd.nls,
	  dlls/kernel32/nls/ese.nls, dlls/kernel32/nls/esf.nls,
	  dlls/kernel32/nls/esg.nls, dlls/kernel32/nls/esh.nls,
	  dlls/kernel32/nls/esi.nls, dlls/kernel32/nls/esl.nls,
	  dlls/kernel32/nls/esm.nls, dlls/kernel32/nls/esn.nls,
	  dlls/kernel32/nls/eso.nls, dlls/kernel32/nls/esp.nls,
	  dlls/kernel32/nls/esr.nls, dlls/kernel32/nls/ess.nls,
	  dlls/kernel32/nls/esu.nls, dlls/kernel32/nls/esv.nls,
	  dlls/kernel32/nls/esy.nls, dlls/kernel32/nls/esz.nls,
	  dlls/kernel32/nls/eti.nls, dlls/kernel32/nls/euq.nls,
	  dlls/kernel32/nls/far.nls, dlls/kernel32/nls/fin.nls,
	  dlls/kernel32/nls/fos.nls, dlls/kernel32/nls/fra.nls,
	  dlls/kernel32/nls/frb.nls, dlls/kernel32/nls/frc.nls,
	  dlls/kernel32/nls/frl.nls, dlls/kernel32/nls/frm.nls,
	  dlls/kernel32/nls/frs.nls, dlls/kernel32/nls/gae.nls,
	  dlls/kernel32/nls/gdh.nls, dlls/kernel32/nls/gdv.nls,
	  dlls/kernel32/nls/glc.nls, dlls/kernel32/nls/guj.nls,
	  dlls/kernel32/nls/heb.nls, dlls/kernel32/nls/hin.nls,
	  dlls/kernel32/nls/hrv.nls, dlls/kernel32/nls/hun.nls,
	  dlls/kernel32/nls/hye.nls, dlls/kernel32/nls/ind.nls,
	  dlls/kernel32/nls/isl.nls, dlls/kernel32/nls/ita.nls,
	  dlls/kernel32/nls/its.nls, dlls/kernel32/nls/jpn.nls,
	  dlls/kernel32/nls/kan.nls, dlls/kernel32/nls/kat.nls,
	  dlls/kernel32/nls/kkz.nls, dlls/kernel32/nls/knk.nls,
	  dlls/kernel32/nls/kor.nls, dlls/kernel32/nls/kyr.nls,
	  dlls/kernel32/nls/lth.nls, dlls/kernel32/nls/lvi.nls,
	  dlls/kernel32/nls/mar.nls, dlls/kernel32/nls/mki.nls,
	  dlls/kernel32/nls/mon.nls, dlls/kernel32/nls/msb.nls,
	  dlls/kernel32/nls/msl.nls, dlls/kernel32/nls/nlb.nls,
	  dlls/kernel32/nls/nld.nls, dlls/kernel32/nls/nls.nls,
	  dlls/kernel32/nls/non.nls, dlls/kernel32/nls/nor.nls,
	  dlls/kernel32/nls/pan.nls, dlls/kernel32/nls/plk.nls,
	  dlls/kernel32/nls/ptb.nls, dlls/kernel32/nls/ptg.nls,
	  dlls/kernel32/nls/rom.nls, dlls/kernel32/nls/rus.nls,
	  dlls/kernel32/nls/san.nls, dlls/kernel32/nls/sky.nls,
	  dlls/kernel32/nls/slv.nls, dlls/kernel32/nls/sqi.nls,
	  dlls/kernel32/nls/srb.nls, dlls/kernel32/nls/srl.nls,
	  dlls/kernel32/nls/sve.nls, dlls/kernel32/nls/svf.nls,
	  dlls/kernel32/nls/swk.nls, dlls/kernel32/nls/syr.nls,
	  dlls/kernel32/nls/tam.nls, dlls/kernel32/nls/tel.nls,
	  dlls/kernel32/nls/tha.nls, dlls/kernel32/nls/trk.nls,
	  dlls/kernel32/nls/ttt.nls, dlls/kernel32/nls/ukr.nls,
	  dlls/kernel32/nls/urd.nls, dlls/kernel32/nls/uzb.nls,
	  dlls/kernel32/nls/uzl.nls, dlls/kernel32/nls/vit.nls,
	  dlls/kernel32/nls/wal.nls, dlls/kernel32/nls/zhh.nls,
	  dlls/kernel32/nls/zhi.nls, dlls/kernel32/nls/zhm.nls:
	kernel32: Added the locale name entry to all locale definitions.

	* dlls/kernel32/locale.c, include/winnls.h:
	kernel32: Rewrote the locale matching to match more elements and to support
	Windows-format locale names.
	Added implementation for LocaleNameToLCID and LCIDToLocaleName.

2006-11-16  Huw Davies <huw@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/tests/compobj.c:
	ole32: CoRegisterMessageFilter shouldn't crash on an uninitialized apartment.

2006-11-16  Detlef Riekenberg <wine.dev@web.de>

	* dlls/shell32/xdg.c:
	shell32: Fix a function name in a comment.

2006-11-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/Makefile.in, dlls/kernel32/tests/loader.c:
	kernel32: Add a basic PE loader test.

2006-11-16  Hans Leidekker <hans@it.vu.nl>

	* dlls/setupapi/query.c, dlls/setupapi/setupapi.spec, include/setupapi.h:
	setupapi: Implement SetupGetTargetPath{A,W}.

2006-11-15  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Add test for ConfigurePortW.

2006-11-16  Alexandre Julliard <julliard@winehq.org>

	* Makefile.in, configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/user/Makefile.in, dlls/user/bidi16.c, dlls/user/button.c,
	  dlls/user/caret.c, dlls/user/class.c, dlls/user/clipboard.c,
	  dlls/user/combo.c, dlls/user/comm16.c, dlls/user/controls.h,
	  dlls/user/cursoricon.c, dlls/user/dde_client.c, dlls/user/dde_misc.c,
	  dlls/user/dde_private.h, dlls/user/dde_server.c,
	  dlls/user/ddeml.spec, dlls/user/ddeml16.c, dlls/user/defdlg.c,
	  dlls/user/defwnd.c, dlls/user/desktop.c, dlls/user/dialog.c,
	  dlls/user/dialog16.c, dlls/user/display.c,
	  dlls/user/display.drv.spec, dlls/user/driver.c, dlls/user/driver16.c,
	  dlls/user/edit.c, dlls/user/exticon.c, dlls/user/focus.c,
	  dlls/user/hook.c, dlls/user/hook16.c, dlls/user/icontitle.c,
	  dlls/user/input.c, dlls/user/kbd16.c, dlls/user/keyboard.drv.spec,
	  dlls/user/listbox.c, dlls/user/lstr.c, dlls/user/mdi.c,
	  dlls/user/menu.c, dlls/user/message.c, dlls/user/misc.c,
	  dlls/user/mouse.drv.spec, dlls/user/mouse16.c, dlls/user/msg16.c,
	  dlls/user/msgbox.c, dlls/user/network.c, dlls/user/nonclient.c,
	  dlls/user/painting.c, dlls/user/property.c, dlls/user/resource.c,
	  dlls/user/resources/display.rc, dlls/user/resources/mouse.rc,
	  dlls/user/resources/user32.rc, dlls/user/resources/user32_Bg.rc,
	  dlls/user/resources/user32_Ca.rc, dlls/user/resources/user32_Cs.rc,
	  dlls/user/resources/user32_Da.rc, dlls/user/resources/user32_De.rc,
	  dlls/user/resources/user32_En.rc, dlls/user/resources/user32_Eo.rc,
	  dlls/user/resources/user32_Es.rc, dlls/user/resources/user32_Fi.rc,
	  dlls/user/resources/user32_Fr.rc, dlls/user/resources/user32_Hu.rc,
	  dlls/user/resources/user32_It.rc, dlls/user/resources/user32_Ja.rc,
	  dlls/user/resources/user32_Ko.rc, dlls/user/resources/user32_Nl.rc,
	  dlls/user/resources/user32_No.rc, dlls/user/resources/user32_Pl.rc,
	  dlls/user/resources/user32_Pt.rc, dlls/user/resources/user32_Ru.rc,
	  dlls/user/resources/user32_Si.rc, dlls/user/resources/user32_Sk.rc,
	  dlls/user/resources/user32_Sv.rc, dlls/user/resources/user32_Tr.rc,
	  dlls/user/resources/user32_Uk.rc, dlls/user/resources/user32_Wa.rc,
	  dlls/user/resources/user32_Zh.rc, dlls/user/resources/user32_bin.rc,
	  dlls/user/resources/version.rc, dlls/user/resources/version16.rc,
	  dlls/user/scroll.c, dlls/user/spy.c, dlls/user/static.c,
	  dlls/user/sysparams.c, dlls/user/tests/Makefile.in,
	  dlls/user/tests/class.c, dlls/user/tests/clipboard.c,
	  dlls/user/tests/cursoricon.c, dlls/user/tests/dce.c,
	  dlls/user/tests/dde.c, dlls/user/tests/dialog.c,
	  dlls/user/tests/edit.c, dlls/user/tests/generated.c,
	  dlls/user/tests/input.c, dlls/user/tests/listbox.c,
	  dlls/user/tests/menu.c, dlls/user/tests/monitor.c,
	  dlls/user/tests/msg.c, dlls/user/tests/resource.c,
	  dlls/user/tests/resource.rc, dlls/user/tests/sysparams.c,
	  dlls/user/tests/text.c, dlls/user/tests/win.c,
	  dlls/user/tests/winstation.c, dlls/user/tests/wsprintf.c,
	  dlls/user/text.c, dlls/user/uitools.c, dlls/user/user.exe.spec,
	  dlls/user/user16.c, dlls/user/user32.spec, dlls/user/user_main.c,
	  dlls/user/user_private.h, dlls/user/win.c, dlls/user/winhelp.c,
	  dlls/user/winpos.c, dlls/user/winproc.c, dlls/user/winproc.h,
	  dlls/user/winstation.c, dlls/user/wnd16.c, dlls/user/wsprintf.c,
	  dlls/user32/Makefile.in, dlls/user32/bidi16.c, dlls/user32/button.c,
	  dlls/user32/caret.c, dlls/user32/class.c, dlls/user32/clipboard.c,
	  dlls/user32/combo.c, dlls/user32/comm16.c, dlls/user32/controls.h,
	  dlls/user32/cursoricon.c, dlls/user32/dde_client.c,
	  dlls/user32/dde_misc.c, dlls/user32/dde_private.h,
	  dlls/user32/dde_server.c, dlls/user32/ddeml.spec,
	  dlls/user32/ddeml16.c, dlls/user32/defdlg.c, dlls/user32/defwnd.c,
	  dlls/user32/desktop.c, dlls/user32/dialog.c, dlls/user32/dialog16.c,
	  dlls/user32/display.c, dlls/user32/display.drv.spec,
	  dlls/user32/driver.c, dlls/user32/driver16.c, dlls/user32/edit.c,
	  dlls/user32/exticon.c, dlls/user32/focus.c, dlls/user32/hook.c,
	  dlls/user32/hook16.c, dlls/user32/icontitle.c, dlls/user32/input.c,
	  dlls/user32/kbd16.c, dlls/user32/keyboard.drv.spec,
	  dlls/user32/listbox.c, dlls/user32/lstr.c, dlls/user32/mdi.c,
	  dlls/user32/menu.c, dlls/user32/message.c, dlls/user32/misc.c,
	  dlls/user32/mouse.drv.spec, dlls/user32/mouse16.c,
	  dlls/user32/msg16.c, dlls/user32/msgbox.c, dlls/user32/network.c,
	  dlls/user32/nonclient.c, dlls/user32/painting.c,
	  dlls/user32/property.c, dlls/user32/resource.c,
	  dlls/user32/resources/display.rc, dlls/user32/resources/mouse.rc,
	  dlls/user32/resources/user32.rc, dlls/user32/resources/user32_Bg.rc,
	  dlls/user32/resources/user32_Ca.rc,
	  dlls/user32/resources/user32_Cs.rc,
	  dlls/user32/resources/user32_Da.rc,
	  dlls/user32/resources/user32_De.rc,
	  dlls/user32/resources/user32_En.rc,
	  dlls/user32/resources/user32_Eo.rc,
	  dlls/user32/resources/user32_Es.rc,
	  dlls/user32/resources/user32_Fi.rc,
	  dlls/user32/resources/user32_Fr.rc,
	  dlls/user32/resources/user32_Hu.rc,
	  dlls/user32/resources/user32_It.rc,
	  dlls/user32/resources/user32_Ja.rc,
	  dlls/user32/resources/user32_Ko.rc,
	  dlls/user32/resources/user32_Nl.rc,
	  dlls/user32/resources/user32_No.rc,
	  dlls/user32/resources/user32_Pl.rc,
	  dlls/user32/resources/user32_Pt.rc,
	  dlls/user32/resources/user32_Ru.rc,
	  dlls/user32/resources/user32_Si.rc,
	  dlls/user32/resources/user32_Sk.rc,
	  dlls/user32/resources/user32_Sv.rc,
	  dlls/user32/resources/user32_Tr.rc,
	  dlls/user32/resources/user32_Uk.rc,
	  dlls/user32/resources/user32_Wa.rc,
	  dlls/user32/resources/user32_Zh.rc,
	  dlls/user32/resources/user32_bin.rc,
	  dlls/user32/resources/version.rc, dlls/user32/resources/version16.rc,
	  dlls/user32/scroll.c, dlls/user32/spy.c, dlls/user32/static.c,
	  dlls/user32/sysparams.c, dlls/user32/tests/Makefile.in,
	  dlls/user32/tests/class.c, dlls/user32/tests/clipboard.c,
	  dlls/user32/tests/cursoricon.c, dlls/user32/tests/dce.c,
	  dlls/user32/tests/dde.c, dlls/user32/tests/dialog.c,
	  dlls/user32/tests/edit.c, dlls/user32/tests/generated.c,
	  dlls/user32/tests/input.c, dlls/user32/tests/listbox.c,
	  dlls/user32/tests/menu.c, dlls/user32/tests/monitor.c,
	  dlls/user32/tests/msg.c, dlls/user32/tests/resource.c,
	  dlls/user32/tests/resource.rc, dlls/user32/tests/sysparams.c,
	  dlls/user32/tests/text.c, dlls/user32/tests/win.c,
	  dlls/user32/tests/winstation.c, dlls/user32/tests/wsprintf.c,
	  dlls/user32/text.c, dlls/user32/uitools.c, dlls/user32/user.exe.spec,
	  dlls/user32/user16.c, dlls/user32/user32.spec,
	  dlls/user32/user_main.c, dlls/user32/user_private.h,
	  dlls/user32/win.c, dlls/user32/winhelp.c, dlls/user32/winpos.c,
	  dlls/user32/winproc.c, dlls/user32/winproc.h,
	  dlls/user32/winstation.c, dlls/user32/wnd16.c,
	  dlls/user32/wsprintf.c, programs/winetest/Makefile.in,
	  tools/winapi/tests.dat:
	user32: Renamed the user/ directory to user32.

2006-11-15  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d9/tests/device.c:
	d3d9: Forward port d3d8 refcount tests.

	* dlls/d3d8/tests/device.c:
	d3d8: Show that the implicit surfaces are not freed if refcount reaches 0.

2006-11-15  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shlwapi/ordinal.c:
	shlwapi: Cast-qual warnings fix.

	* dlls/shlwapi/clist.c:
	shlwapi: Cast-qual warnings fix.

2006-11-16  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shell32/shres.rc, dlls/shell32/shresdef.h:
	shell32: Define a few more icon resources.

2006-11-16  Mike McCormack <mike@codeweavers.com>

	* dlls/oleaut32/ungif.h:
	oleaut32: Remove incorrect references to malloc.

	* dlls/kernel32/process.c:
	kernel32: Downgrade a FIXME to a WARN.

2006-11-15  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/localmon.c:
	localspl: Replace number with a defined value (static buffer size).

	* dlls/localspl/localmon.c, dlls/localspl/localspl_private.h,
	  dlls/localspl/spl_De.rc, dlls/localspl/spl_En.rc,
	  dlls/localspl/spl_Ko.rc:
	localspl: Implement ConfigurePort.

2006-11-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/dde_client.c, dlls/user/dde_misc.c, dlls/user/dde_private.h,
	  dlls/user/dde_server.c:
	user: Use DDE critical section exclusively for instance list protection.

	* dlls/user/dde_client.c, dlls/user/dde_misc.c, dlls/user/dde_server.c:
	user: Set DDE errors in some failing cases.

2006-11-13  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/riched20/editor.c:
	riched20: Fix key handling in dialogs.

2006-11-14  Hans Leidekker <hans@it.vu.nl>

	* dlls/setupapi/query.c, dlls/setupapi/setupapi.spec,
	  dlls/setupapi/stubs.c, include/setupapi.h:
	setupapi: Implement SetupGetSourceInfo{A,W}.

2006-11-15  Rob Shearman <rob@codeweavers.com>

	* include/winbase.h:
	include: Add security QOS flags to winbase.h.

2006-11-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/comctl32/imagelist.c:
	Revert "comctl32: Fix a potential regression in ImageList_ReplaceIcon()."
	This reverts commit 9e772d1369f0292cfb79d8cabc017611fc6d0369.

2006-11-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shell32/shellpath.c, dlls/shell32/undocshell.h:
	shell32: Cast-qual warnings fix.

	* dlls/shell32/shellole.c:
	shell32: Cast-qual warnings fix.

2006-11-15  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/user/edit.c:
	user32: Update the edit control when the IME composition string is emptied.

2006-11-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/tests/process.c:
	kernel32/tests: Reserve some more memory for the environment.

2006-11-15  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Use SecInvalidateHandle and SecIsValidHandle for handling
	RpcConnection::ctx instead of setting/comparing the field to 0.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Add support for signing, verifying, encrypting and decrypting RPC
	packets.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Fix a crash in RPCRT4_OpenBinding that can occur if
	RPCRT4_CreateConnection fails by checking the return value from the
	function and returning in this case.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Add a FIXME for unsupported client protocol sequences.

2006-11-15  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/tests/device.c:
	d3d8: Test AddRef with refcount==0.

	* dlls/d3d8/tests/device.c:
	d3d8: Test refcount forwarding.

	* dlls/d3d8/tests/device.c:
	d3d8: Back buffer is identical to the render target, test it only once.

2006-11-14  Sam Dennis <samuel.howard.dennis@gmail.com>

	* dlls/msvcrt/msvcrt.spec, dlls/msvcrt/wcs.c:
	msvcrt: Use the custom vsnprintf implementation for msvcrt.vsprintf too.

2006-11-04  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/thread.c, server/ptrace.c:
	ntdll: Fixed returned status for NtQueryThreadInformation's ThreadDescriptorTable
	(spotted by Peter Oberndorfer).

2006-11-06  Kovács András <andras@csevego.net>

	* dlls/mshtml/htmlelem.c:
	mshtml: HTMLElementCollection_item implementation.

2006-11-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/tests/file.c:
	msvcrt/tests: Clean up a temp file.

	* dlls/shell32/shlfileop.c:
	shell32: Don't use the short path name to delete files in SHFileOperation.

2006-11-14  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/shdoclc/Ko.rc:
	shdoclc: Updated Korean resource.

2006-11-14  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/package.c:
	msi: Split MSI_CreatePackage into two functions.

	* dlls/msi/package.c:
	msi: Delete the tempfile created by GetTempFileName.

	* dlls/msi/package.c:
	msi: Defer package deletion until after the database is closed.

	* dlls/msi/custom.c, dlls/msi/files.c, dlls/msi/helpers.c,
	  dlls/msi/msipriv.h:
	msi: Remove track_tempfile()'s unused 2nd parameter.

	* dlls/msi/dialog.c:
	msi: Always delete temp files after creating them.

	* dlls/msi/helpers.c:
	msi: Print a message if we fail to delete a file.

2006-11-13  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/factory.c, dlls/msxml3/regsvr.c:
	msxml3: Support both v 2.x and 3.0 version independent clsids as well as the
	v 3.0 version dependent clsid.

	* dlls/msxml3/factory.c, dlls/msxml3/tests/domdoc.c, include/msxml2.idl:
	msxml3: Add the CLSID_DOMDocument define in msxml2.idl to match the PSDK.

	* dlls/msxml3/Makefile.in, dlls/msxml3/uuid.c:
	msxml3: Initialize the uuids that aren't in libuuid.

	* include/msxml2.idl:
	msxml3: Add a guard around DOMNodeType just like in the PSDK, so that we can
	include version 2 and version 3 msxml headers simultaneously.

2006-11-13  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/msvcrt/tests/printf.c:
	msvcrt: printf buffer overrun tests.

	* dlls/msvcrt/wcs.c:
	msvcrt: Estimate required buffer size better in pf_vsnprintf.

	* dlls/msvcrt/wcs.c:
	msvcrt: Free correct buffer in pf_vsnprintf.

2006-11-14  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Remove a redundant variable.

	* dlls/comctl32/imagelist.c:
	comctl32: Fix a potential regression in ImageList_ReplaceIcon().

	* dlls/comctl32/imagelist.c:
	comctl32: When removing an image, move the remaining images one forward,
	not one backwards.

	* dlls/user/win.c:
	user32: Print a fixme only once.

	* dlls/kernel32/locale.c:
	kernel32: Print a FIXME only once.

2006-11-13  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c, dlls/msi/files.c:
	msi: Notify the external UI handler when changing media.

2006-11-13  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/setupapi/virtcopy.c:
	setupapi: Cast-qual warning fix.

	* dlls/secur32/util.c:
	secur32: Cast-qual warning fix.

	* dlls/rsaenh/implglue.c:
	rsaenh: Cast-qual warning fix.

2006-11-13  Hans Leidekker <hans@it.vu.nl>

	* dlls/setupapi/query.c, dlls/setupapi/queue.c,
	  dlls/setupapi/setupapi.spec, dlls/setupapi/setupapi_private.h,
	  include/setupapi.h:
	setupapi: Implement SetupGetSourceFileLocation{A,W}.

	* dlls/setupapi/install.c:
	setupapi: The inf section suffix that corresponds to __x86_64 is .ntamd64.

2006-11-13  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/ntlm.c:
	secur32: Fix handling of ISC_REQ* flags in InitializeSecurityContext.

2006-11-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Update the X11 window position when the primary monitor origin
	changes.

2006-11-13  Rob Shearman <rob@codeweavers.com>

	* include/Makefile.in, include/wincred.h:
	include: Add wincred.h header file.

	* include/sspi.h:
	include: Fix a typo in the SecInvalidateHandle macro in sspi.h.

2006-11-13  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/ntdll/directory.c, include/config.h.in:
	ntdll: Added support for reading directories using the BSD getdirentries
	function.

2006-11-11  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Remove deadcode (Coverity).

2006-11-11  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/atl/atl_main.c:
	atl: Implement AtlModuleRegisterServer.

	* dlls/atl/atl_main.c, dlls/atl/atlbase.h:
	atl: Implement AtlRegisterLoadTypeLib.

	* dlls/atl/atl_main.c:
	atl: Implement AtlModuleLoadTypeLib.

	* dlls/atl/atl_main.c, dlls/atl/atlbase.h:
	atl: Fix incorrect prototypes.

	* dlls/atl/atl.spec, dlls/atl/atl_ax.c:
	atl: AtlAxGetHost and AtlAxGetControl implementation.

	* dlls/atl/atl_ax.c:
	atl: Host component implementation: IOleControlSite.

	* dlls/atl/atl_ax.c:
	atl: Host component implementation: IOleInPlaceFrame.

	* dlls/atl/atl_ax.c:
	atl: Host component implementation: IOleInPlaceSiteWindowless.

	* dlls/atl/atl_ax.c:
	atl: Host component implementation: IOleContainer.

	* dlls/atl/atl.spec, dlls/atl/atl_ax.c:
	atl: Implement AtlAxAttachControl.

2006-11-10  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/atl/atl_ax.c:
	alt: Host component implementation: IOleClientSite.

2006-11-13  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/rpc.c:
	ole32: Re-enable the code that unregisters interfaces with the RPC runtime.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_server.h:
	rpcrt4: Implement RpcServerUnregisterIf.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_server.h:
	rpcrt4: Convert the server interfaces list into a standard Wine list.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Fix a comment and move a WARN to where it really indicates a problem,
	rather than falsely triggering on normal conditions.

2006-11-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/locale.c:
	kernel32: Use LC_NUMERIC instead of LC_ALL to determine the user locale.
	Passing LC_ALL to setlocale() doesn't do what we want.

2006-11-13  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/custom.c:
	msi: Only free a string in one place.

	* dlls/msi/custom.c:
	msi: Fix error handling.

	* dlls/msi/custom.c:
	msi: Track temp files as soon as they are created.

	* dlls/msi/custom.c:
	msi: Fail if we can't write out a temporary file.

	* dlls/msi/tests/suminfo.c:
	msi: Fix an uninitialized variable in the test cases.

	* dlls/msi/custom.c:
	msi: Clean upstore_binary_to_temp.

2006-11-12  Francois Gouget <fgouget@free.fr>

	* dlls/avifil32/api.c, dlls/comctl32/rebar.c,
	  dlls/comctl32/tests/header.c, dlls/dplayx/dplayx_messages.c,
	  dlls/dsound/tests/capture.c, dlls/dsound/tests/dsound.c,
	  dlls/dsound/tests/dsound8.c, dlls/msi/action.c, dlls/msi/custom.c,
	  dlls/msvfw32/msvideo_main.c, dlls/ntdll/handletable.c,
	  dlls/ole32/moniker.c, dlls/ole32/ole2_16.c, dlls/uxtheme/system.c,
	  dlls/wined3d/device.c, dlls/wined3d/wined3d_main.c,
	  dlls/winex11.drv/dib_convert.c, dlls/winex11.drv/opengl.c,
	  dlls/winmm/wineoss/dscapture.c:
	Assorted spelling fixes.

	* dlls/advapi32/security.c, dlls/crypt32/oid.c, dlls/hlink/hlink_main.c,
	  dlls/infosoft/infosoft_main.c, dlls/inseng/inseng_main.c,
	  dlls/kernel32/heap.c, dlls/ntdsapi/ntdsapi.c, dlls/opengl32/wgl.c,
	  dlls/pstorec/pstorec.c, dlls/quartz/main.c, dlls/query/query_main.c,
	  dlls/rpcrt4/rpc_epmap.c, dlls/secur32/secur32.c:
	Add some documentation headers to make winapi_check happy.

	* dlls/ole32/ole2_16.c, dlls/ole32/storage.c:
	ole32: Standardize some documentation comments.

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fix some comments so they are properly formatted documentation
	headers.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Add some stub documentation headers to make winapi_check happy.
	Also fix some headers that identified internal APIs as external.

	* dlls/shell32/trash.c, dlls/shell32/xdg.c:
	shell32: Fix inclusion of conditional headers (spotted by winapi_check).

	* dlls/msi/table.c:
	msi: assert.h is not a local header (spotted by winapi_check).

	* dlls/ole32/tests/clipboard.c:
	ole32/tests: Don't use the NONAMELESS* macros in the tests.

2006-11-13  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdll/Makefile.in:
	ntdll: Alphabetically sort the Makefile entries.

2006-11-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/comdlg32/fontdlg16.c:
	comdlg32: Remove unused variable (Coverity).

	* dlls/rsaenh/rsa.c:
	rsaenh: Move type-check before len-check (Coverity).

	* dlls/msi/action.c:
	msi: Fix typo's (Coverity).

2006-11-12  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Fix a comment.

2006-11-13  Alexandre Julliard <julliard@winehq.org>

	* server/process.c:
	server: Fix list corruption caused by previous change.

2006-11-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/oleobj.c, dlls/mshtml/view.c:
	mshtml: Added border implementation.

2006-11-11  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IDM_ORDERLIST implementation.

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IDM_UNORDERLIST implementation.

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IDM_HORIZONTALLINE implementation.

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IDM_INDENT and IDM_OUTDENT implementation.

2006-11-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Bg.rc, dlls/mshtml/De.rc, dlls/mshtml/En.rc,
	  dlls/mshtml/Es.rc, dlls/mshtml/Fi.rc, dlls/mshtml/Fr.rc,
	  dlls/mshtml/Hu.rc, dlls/mshtml/Ko.rc, dlls/mshtml/Nl.rc,
	  dlls/mshtml/No.rc, dlls/mshtml/Sv.rc, dlls/mshtml/Tr.rc:
	mshtml: Remove menus that are in shdoclc.dll.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/shdoclc/Bg.rc, dlls/shdoclc/De.rc, dlls/shdoclc/En.rc,
	  dlls/shdoclc/Es.rc, dlls/shdoclc/Fi.rc, dlls/shdoclc/Fr.rc,
	  dlls/shdoclc/Hu.rc, dlls/shdoclc/Ko.rc, dlls/shdoclc/Makefile.in,
	  dlls/shdoclc/Nl.rc, dlls/shdoclc/No.rc, dlls/shdoclc/Sv.rc,
	  dlls/shdoclc/Tr.rc, dlls/shdoclc/rsrc.rc, dlls/shdoclc/shdoclc.h,
	  dlls/shdoclc/shdoclc.spec:
	shdoclc: Added shdoclc.dll.

2006-11-12  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/winmm/tests/Makefile.in, dlls/winmm/tests/capture.c,
	  dlls/winmm/tests/mixer.c, dlls/winmm/tests/mmio.c,
	  dlls/winmm/tests/timer.c, dlls/winmm/tests/wave.c:
	winmm/tests: Win64 printf format warning fixes.

	* dlls/winmm/tests/timer.c:
	winmm/tests: Fix the parameters of LPTIMECALLBACK functions.

	* dlls/dsound/Makefile.in, dlls/dsound/buffer.c, dlls/dsound/capture.c,
	  dlls/dsound/dsound.c, dlls/dsound/dsound_main.c,
	  dlls/dsound/duplex.c, dlls/dsound/mixer.c, dlls/dsound/primary.c,
	  dlls/dsound/propset.c, dlls/dsound/sound3d.c:
	dsound: Win64 printf format warning fixes.

	* dlls/dsound/dsound_private.h, dlls/dsound/mixer.c:
	dsound: Fix the declaration/definition of DSOUND_timer().

2006-11-12  Hans Leidekker <hans@it.vu.nl>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: UrlEscapeA should fail with E_POINTER when querying the buffer size.

2006-11-12  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Fix a typo in the pbuffer pixelformat enumeration code.

2006-11-11  H. Verbeet <hverbeet@gmail.com>

	* dlls/winex11.drv/bitblt.c:
	winex11.drv: The y coordinate should be offset agaist the height, not the width.

2006-11-11  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advapi32/crypt_sha.c:
	advapi32: Constify a parameter.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Cast-qual warnings fix.

	* dlls/rpcrt4/cstub.c:
	rpcrt4: Cast-qual warnings fix.

	* dlls/quartz/pin.c, dlls/quartz/pin.h:
	quartz: Cast-qual warnings fix.

	* dlls/qcap/pin.c, dlls/qcap/pin.h:
	qcap: Cast-qual warnings fix.

2006-11-10  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Fix a heap corruption bug by resizing the src string before adding to it.

2006-11-10  Francois Gouget <fgouget@free.fr>

	* dlls/tapi32/assisted.c, dlls/tapi32/line.c, dlls/tapi32/phone.c,
	  include/tapi.h:
	include/tapi.h: Add missing include directives.

2006-11-10  Francois Gouget <fgouget@codeweavers.com>

	* dlls/user/tests/monitor.c:
	user: Only perform the screen resolution changing tests in interactive mode.

2006-11-10  Francois Gouget <fgouget@free.fr>

	* dlls/kernel32/tests/locale.c:
	kernel32: Fix the 'MAP_FOLDCZONE' ok() test.

2006-11-10  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/winhelp.c:
	winhelp: Use path of parent helpfile while looking for popup window.

	* programs/winhelp/winhelp.c:
	winhelp: Fix WINHELP_DeleteWindow.

	* programs/winhelp/winhelp.c:
	winhelp: Do not create popup window if file not found.

2006-11-10  Alexandre Julliard <julliard@winehq.org>

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

----------------------------------------------------------------
2006-11-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Avoid a sizeof in a trace.

2006-11-10  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Create one protseq object per used protocol sequence, not per
	RpcServerUseProtseq* function call.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_server.h:
	rpcrt4: Don't store the endpoint in the protseq.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Fix a crash in RpcServerUseProtseqEpExA/W when using an unsupported
	protseq.

	* dlls/rpcrt4/rpc_defs.h, dlls/rpcrt4/rpc_message.c:
	rpcrt4: Correctly align the results in the RPC Bind Ack packet.

2006-11-10  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/oleaut32/tests/typelib.c, dlls/shlwapi/reg.c:
	shlwapi: Unify SHDeleteKeyW implementation with SHDeleteKeyA.

	* dlls/oleaut32/tests/vartype.c:
	oleaut32: Constify some data.

2006-11-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/opengl32/wgl.c:
	opengl32: Hack to make sure winex11 is loaded before getting function pointers.

	* dlls/advapi32/registry.c:
	advapi32: Fixed last error check in RegSaveKey.

	* server/process.c:
	server: Properly handle kill_thread recursion when killing a process.
	Spotted by Mike McCormack.

2006-11-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/quartz/filtergraph.c:
	quartz: Cast-qual warning fix.

2006-11-10  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/tests/device.c:
	d3d8: Add GetContainer tests for implicit surfaces.

	* dlls/d3d9/tests/device.c:
	d3d9: Forwardport implicit surface tests.

2006-11-10  Mike McCormack <mike@codeweavers.com>

	* dlls/riched20/tests/Makefile.in, dlls/riched20/tests/editor.c:
	riched20: Flush the clipboard before exiting the test.

	* dlls/riched20/tests/editor.c:
	riched20: Add missing void to parameter list.

	* dlls/riched20/tests/editor.c:
	riched20: Remember to close windows after tests.

	* dlls/riched20/editor.c:
	riched20: Fix a memory leak.

	* dlls/riched20/editor.c:
	riched20: Set the correct number of initialized cursors.

	* dlls/riched20/editor.c:
	riched20: Fix an uninitialized variable.

	* dlls/msi/action.c:
	msi: Only log the Action, as it's the same as ActionRequest.

	* dlls/msi/action.c:
	msi: Check whether the component is enabled first.

	* dlls/msi/action.c:
	msi: Component attributes are bitmasks.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Use HeapAlloc/Free instead of alloc/free.

	* dlls/setupapi/setupcab.c:
	setupapi: Use HeapAlloc/Free instead of malloc/free.

	* dlls/shlwapi/path.c:
	shlwapi: Use HeapAlloc/Free instead of malloc/free.

	* dlls/oleaut32/ungif.c:
	oleaut32: Use HeapAlloc/Free instead of malloc/free.

2006-11-10  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/winex11.drv/bitblt.c:
	winex11.drv: Check for incompatible bpps and negative widths.

	* dlls/winex11.drv/bitblt.c:
	winex11.drv: Fix copying top-down/bottom-up DIBs.

2006-11-10  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: work around a bug in ntlm_auth that breaks RPC.

2006-11-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/main.c, dlls/mshtml/mshtml_private.h, dlls/mshtml/olewnd.c:
	mshtml: Use popup menu from shdoclc.dll.

2006-11-09  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/rpcrt4/Makefile.in, dlls/rpcrt4/cproxy.c, dlls/rpcrt4/cstub.c,
	  dlls/rpcrt4/ndr_clientserver.c, dlls/rpcrt4/ndr_fullpointer.c,
	  dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/ndr_ole.c,
	  dlls/rpcrt4/ndr_stubless.c, dlls/rpcrt4/rpc_binding.c,
	  dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_server.c,
	  dlls/rpcrt4/rpc_transport.c, dlls/rpcrt4/rpcrt4_main.c,
	  dlls/rpcrt4/rpcss_np_client.c:
	rpcrt4: Win64 printf format warning fixes.

	* dlls/rpcrt4/ndr_fullpointer.c, dlls/rpcrt4/ndr_marshall.c,
	  dlls/rpcrt4/ndr_misc.h:
	rpcrt4: More "unsigned long" to "ULONG" changes in preparation of the removal
	of WINE_NO_LONG_AS_INT.

	* dlls/rpcrt4/ndr_clientserver.c, dlls/rpcrt4/ndr_fullpointer.c,
	  dlls/rpcrt4/ndr_ole.c, dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Bring the function definitions in sync with their declaration.
	They got out of sync due to the unsigned long to ULONG changes in the headers.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4/ndr_marshall.c: Bring the function definitions in sync with their
	declaration.
	Those got out of sync due to the unsigned long to ULONG migration in the headers.

2006-11-09  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* loader/Makefile.in:
	loader: Use plain binary name of git-describe to avoid junk in version output.

2006-11-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4/tests: Replace || by |.

	* dlls/dmsynth/dmsynth_main.c:
	dmsynth: Fix one more instance of && instead of &.

2006-11-09  Marcus Meissner <meissner@suse.de>

	* dlls/user/text.c:
	user32: Replaced && 0xff by & 0xff.

	* dlls/dmscript/dmscript_main.c:
	dmscript: Replaced && 0xff by & 0xff.

	* dlls/dmusic/collection.c, dlls/dmusic/dmusic_main.c:
	dmusic: Replaced && 0xfff... by & 0xff.

	* dlls/dswave/dswave_main.c:
	dswave: Replaced && 0xff by & 0xff.

	* dlls/dmcompos/dmcompos_main.c:
	dmcompos: Replaced && 0xff by & 0xff.

2006-11-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* include/winsock.h:
	include: Remove duplicate definition.

2006-11-09  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/tests/device.c:
	d3d8: Add refcount tests for implicit surfaces.

2006-11-09  Francois Gouget <fgouget@codeweavers.com>

	* programs/winepath/winepath.c:
	winepath: Fix --long option.

2006-11-08  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/mscms/profile.c, dlls/mscms/tests/profile.c:
	mscms: GetColorDirectory: fixed incorrect A -> W conversions.

	* dlls/msi/registry.c:
	msi: Fixed bogus A -> W conversion.

2006-11-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/tests/pipe.c:
	kernel32/tests: Fixed the pipe test for MacOS.

2006-11-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added QueryStatus(IDM_JUSTIFY*) implementation.

	* dlls/mshtml/olecmd.c:
	mshtml: Code clean up.

	* dlls/mshtml/olecmd.c:
	mshtml: Added Exec(IDM_JUSTIFYLEFT) and Exec(IDM_JUSTIFYRIGHT) implementataion.

	* dlls/mshtml/olecmd.c:
	mshtml: Added Exec(IDM_JUSTIFYCENTER) implementation.

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IDM_FORECOLOR implementation.

	* dlls/mshtml/olecmd.c:
	mshtml: Added Exec(IDM_FONTSIZE) stub.

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added QueryStatus(IDM_FONTSIZE) implementation.

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added QueryStatus(IDM_FONTNAME) implementation.

2006-11-09  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Implement NTLM2 encryption.

2006-11-09  Francois Gouget <fgouget@free.fr>

	* include/shlwapi.h:
	shlwapi: Add a fixme for a missing include.

	* include/usp10.h:
	include/usp10.h: Add missing include directives.

	* include/oledlg.h:
	include/oledlg.h: Add missing include directives.

	* include/dshow.h:
	include/dshow.h: Add missing include directives.

	* include/d3d8.h, include/d3d9.h:
	include: Add missing include directives to d3d8.h and d3d9.h.

	* dlls/user/tests/msg.c, dlls/user/user_private.h, include/winuser.h:
	include: The PSDK headers don't define WM_SYSTIMER so we shouldn't either.

2006-11-09  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/localspl/localspl.rc, dlls/localspl/spl_Ko.rc:
	localspl: Added Korean resource.

2006-11-07  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Add tests for ConfigurePort.

2006-11-09  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Implement ConfigurePortA.

	* dlls/winspool.drv/info.c:
	winspool: Implement ConfigurePortW.

2006-11-09  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/tests/Makefile.in, dlls/d3d8/tests/volume.c:
	d3d8: Backport volume tests.

	* dlls/d3d8/volume.c:
	d3d8: Backport IDirect3DVolume9Impl_GetContainer.

	* dlls/d3d8/tests/Makefile.in, dlls/d3d8/tests/texture.c:
	d3d8: Backport texture tests.

	* dlls/d3d8/tests/device.c:
	d3d8: Backport missing device tests.

	* dlls/d3d8/device.c:
	d3d8: Backport null pointer check in SetCursorProperties.

2006-11-08  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/lolvldrv.c:
	winmm: Plug a memory leak.

	* dlls/ole32/tests/stg_prop.c:
	ole32: Don't use PropVariantClear to setup an unitialized variant.

	* dlls/msi/tests/suminfo.c:
	msi: Don't call PropVariantClear on uninitialized variants.

	* dlls/kernel32/nls/div.nls:
	kernel32: Changed encoding for Divehi (which has a 639-1 enconding).

	* dlls/comctl32/header.c:
	comctl32: header: fix bug found out by running valgrind on the regression tests.

2006-11-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/locale.c:
	kernel32: Fixed buffer overrun in get_registry_locale_info.

2006-11-09  Mike McCormack <mike@codeweavers.com>

	* dlls/user/win.c:
	user32: Downgrade a FIXME to a WARN.

	* dlls/comctl32/toolbar.c:
	comctl32: Downgrade an ERR to a WARN.

	* dlls/gdi32/freetype.c:
	gdi32: Downgrade a FIXME to a WARN.

2006-11-08  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/Makefile.in, dlls/winmm/driver.c, dlls/winmm/lolvldrv.c,
	  dlls/winmm/mci.c, dlls/winmm/message16.c, dlls/winmm/mmio.c,
	  dlls/winmm/mmsystem.c, dlls/winmm/playsound.c, dlls/winmm/sound16.c,
	  dlls/winmm/time.c, dlls/winmm/winemm.h, dlls/winmm/winmm.c:
	winmm: Remove WINE_NO_LONG_AS_INT.

2006-11-08  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: typelib - fix regression in MSFT typelib parsing.

2006-11-08  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4/tests: Fix the warnings introduced by the "unsigned long" to "ULONG"
	header changes.

	* dlls/oleaut32/tmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Fix the warnings introduced by the "unsigned long" to "ULONG"
	header changes.

	* dlls/ole32/tests/marshal.c, dlls/ole32/usrmarshal.c:
	ole32: Fix the warnings introduced by the "unsigned long" to "ULONG" header
	changes.

	* include/rpcndr.h:
	rpcndr.h: Use ULONG/LONG/DWORD for Win64 compatibility instead of unsigned
	long/long.

	* dlls/ole32/usrmarshal.c, dlls/oleaut32/usrmarshal.c,
	  tools/widl/header.c:
	widl: Use ULONG instead of unsigned long when generating declarations for
	*_UserFree() functions. This is needed for Win64 compatibility.

	* dlls/ole32/usrmarshal.c, dlls/oleaut32/usrmarshal.c,
	  tools/widl/header.c:
	widl: Use ULONG instead of unsigned long when generating declarations for
	*_UserUnMarshal() functions. This is needed for Win64 compatibility.

	* dlls/ole32/usrmarshal.c, dlls/oleaut32/usrmarshal.c,
	  tools/widl/header.c:
	widl: Use ULONG instead of unsigned long when generating declarations for
	*_UserMarshal() functions. This is needed for Win64 compatibility.

	* dlls/ole32/usrmarshal.c, dlls/oleaut32/usrmarshal.c,
	  tools/widl/header.c:
	widl: Use ULONG instead of unsigned long when generating declarations for
	*_UserSize() functions. This is needed for Win64 compatibility.

2006-11-08  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/secur32_priv.h, dlls/secur32/util.c:
	secur32: Implement ntlmv2 signing.

	* dlls/secur32/hmac_md5.h:
	secur32: MD5 functions are WINAPI.

2006-11-08  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: For TCP endpoints, bind to all the address and ports that getaddrinfo
	for the machine.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Use MaxCalls from the protseq when determining the backlog length to
	pass in to listen.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: The error code RPC_S_SERVER_UNAVAILABLE doesn't make much sense on
	the server side
	so replace it with some more appropriate endpoint error codes.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_server.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Open the endpoint from the caller of RpcServerUseProtseq* instead of
	the protseq server thread.
	This allows errors to be returned to the caller and to create more than
	one connection for an endpoint.

	* include/rpcdce.h:
	include: Add RPC/DCE defines and structures related to RPC_SECURITY_QOS_V2.

2006-11-08  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Do not write to array element -1.

2006-11-08  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Add support for continuous cabinets.

	* dlls/msi/files.c:
	msi: Extract cabinets in ACTION_InstallFiles. ready_media is for finding and
	loading medi.

	* dlls/msi/files.c:
	msi: Move the file sequence check out of ready_media_info to avoid an unnecessary
	function call.

	* dlls/msi/files.c:
	msi: Factor out load_media_info from ready_media_for_file.

	* dlls/msi/files.c:
	msi: Use disk_prompt from the media_info structure instead of passing an extra
	parameter to msi_change_media.

	* dlls/msi/dialog.c:
	msi: Only add text to the scroll control if text is provided.

2006-11-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c:
	ntdll: Re-add sys/ioctl.h that got lost in the PeekNamedPipe move.

2006-11-08  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/process.c:
	kernel32: Add basic OpenProcess test.

	* include/winnt.h:
	include: Add the PROCESS_SUSPEND_RESUME definition.

2006-11-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/comctl32/tests/subclass.c:
	comctl32: Load function pointers by ordinal.

2006-11-08  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/secur32_priv.h:
	secur32: Use a helper function for creating the signature as this simplifies
	implementing NTLM2 signing a lot.

	* dlls/secur32/dispatcher.c, dlls/secur32/ntlm.c,
	  dlls/secur32/secur32_priv.h:
	secur32: Delete session key and arc4 context when the session based security
	context is deleted.

2006-11-08  Ken Thomases <ken@codeweavers.com>

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Fix off-by-one in map of non-char keysyms to vkeys.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Map XK_KP_Equal to VK_OEM_NEC_EQUAL.

2006-11-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/dib.c, dlls/winex11.drv/palette.c,
	  dlls/winex11.drv/winex11.drv.spec, dlls/winex11.drv/x11drv.h:
	winex11.drv: Get rid of the DIB color table now that it's stored in gdi32.

	* dlls/gdi32/bitmap.c, dlls/gdi32/dib.c, dlls/gdi32/gdi_private.h,
	  dlls/gdi32/tests/bitmap.c:
	gdi32: Remove call to CreateCompatibleDC() from GetDIBits() implementation.
	Based on a patch by Alex Villacís Lasso.

2006-11-06  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/varformat.c:
	oleaut32: varformat - Force LCID_US for conversion in VarFormatNumber.

2006-11-07  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/msi/install.c, dlls/msi/msi.spec:
	msi: Added stub for MsiGetFeatureValidStatesA/W.

2006-11-08  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Fix a regression in ImageList_AddMasked().

2006-11-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/varformat.c, dlls/oleaut32/vartype.c:
	oleaut32: Cast-qual warnings fix.

2006-11-07  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/rpcrt4/tests/cstub.c, include/rpcproxy.h:
	rpcproxy.h: Use LONG/ULONG for Win64 compatibility instead of long and
	unsigned long.

	* dlls/rpcrt4/ndr_misc.h:
	rpcrt4: For Win64 compatibility use a temp variable of the right type in
	ComputeVariance().

2006-11-07  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

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

2006-11-06  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/variant.c:
	oleaut32: variant - allow conversion of VT_DISPATCH into VT_BSTR in VarCat.

	* dlls/oleaut32/olepicture.c, dlls/oleaut32/tests/olepicture.c:
	oleaut32: olepicture - Support multiple redundant headers before picture data.

2006-11-06  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/dbghelp/module.c:
	dbghelp: Initialize BOOL elements with FALSE instead of 0.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Make dwarf2 parser only report file numbers when at least one
	compilation unit really has numbers.

	* dlls/dbghelp/dwarf.c, dlls/dbghelp/elf_module.c:
	dbghelp: Make dwarf2_parse_line_numbers handle missing line number section.

2006-11-06  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec,
	  dlls/shlwapi/tests/ordinal.c:
	shlwapi: Implement GetShellSecurityDescriptor and test for it.

2006-11-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: ScissorRect correction.

2006-11-05  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fix failure of X11DRV_ChoosePixelFormat.

2006-11-07  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Factor out download_remote_cabinet and reuse extract_cabinet_file to
	extract a remote cabinet.

	* dlls/msi/files.c, dlls/msi/helpers.c, dlls/msi/msipriv.h,
	  dlls/msi/package.c, dlls/msi/preview.c:
	msi: Store the base URL of the MSI package if it is downloaded.

	* dlls/msi/files.c:
	msi: Factor copy_install_file out of ACTION_InstallFiles.

	* dlls/msi/files.c:
	msi: Factor schedule_install_files out of ACTION_InstallFiles.

	* dlls/msi/files.c:
	msi: Model the media_info structure members after the columns in the media table.

	* dlls/msi/files.c:
	msi: Use msi_alloc_zero instead of a helper function that sets everything
	to zero.

	* dlls/msi/files.c:
	msi: Use the file's component instead of passing an extra parameter to
	set_file_source.

	* dlls/msi/files.c:
	msi: Use the media_info structure instead of passing in individual values
	to extract_cabinet_file.

	* dlls/msi/tests/install.c:
	msi: Add more tests for installing from cabinets.

2006-11-08  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/tests/lsa.c, dlls/advapi32/tests/security.c,
	  dlls/netapi32/access.c, dlls/netapi32/ds.c,
	  dlls/netapi32/local_group.c, dlls/netapi32/wksta.c,
	  include/ntsecapi.h, include/sspi.h, include/winternl.h:
	Fix ntsecapi.h so it does not depend on winternl.h.

	* dlls/rpcrt4/rpc_epmap.c, dlls/secur32/tests/ntlm.c,
	  dlls/secur32/tests/secur32.c, include/sspi.h:
	secur32: sspi.h must not include wtypes.h.

	* dlls/setupapi/stringtable.c, dlls/setupapi/tests/stringtable.c,
	  include/setupapi.h:
	setupapi: setupapi.h must not define HSTRING_TABLE and the StringTable*
	prototypes.

	* dlls/uxtheme/draw.c, dlls/uxtheme/metric.c, dlls/uxtheme/msstyles.c,
	  dlls/uxtheme/property.c, dlls/uxtheme/system.c,
	  dlls/uxtheme/tests/system.c, include/winerror.h:
	uxtheme: winerror.h must not define the E_PROP_*_UNSUPPORTED macros.

	* dlls/shell32/shlexec.c:
	shell32: Add missing '\n' to Wine trace.

	* include/objbase.h:
	include/objbase.h: Add missing include directives.

	* dlls/comctl32/theming.c, dlls/user/class.c, dlls/user/controls.h,
	  dlls/user/desktop.c, dlls/user/dialog.c, dlls/user/dialog16.c,
	  dlls/user/icontitle.c, dlls/user/menu.c, dlls/user/spy.c,
	  dlls/user/tests/win.c, dlls/uxtheme/draw.c, dlls/uxtheme/system.c,
	  include/winbase.h, include/winuser.h, programs/explorer/desktop.c:
	include: The PSDK does not have the A/W variants of MAKEINTATOM() so we should
	not either.

	* include/winuser.h:
	user32/include: Don't define the window and control styles if NOWINSTYLES is set.

2006-11-08  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Call SetWindowPos with SWP_FRAMECHANGED set when switching from
	minimized state in X11DRV_MapNotify.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Map VK codes for arrow keys to an X11 keycode manually as we do
	for other keypad keys.

2006-11-08  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	msi: Fix a memory leak.

	* dlls/comctl32/imagelist.c:
	comctl32: Remove Nx1 assumptions in ImageList_Read.

2006-11-08  Markus Amsler <markus.amsler@oribi.org>

	* dlls/wined3d/surface.c:
	wined3d: Fix regression in surface conversion.

2006-11-07  Huw Davies <huw@codeweavers.com>

	* dlls/winspool.drv/info.c:
	winspool.drv: Associate a printer driver with each printer, rather than share
	a common one between all printers.

	* dlls/winspool.drv/info.c:
	winspool.drv: Fix AddPrinterDriverA so that the strings actually get written.
	Include the size of the terminating zero in set_reg_szW.

	* dlls/winspool.drv/info.c:
	winspool.drv: Implement DeletePrinterDriverExW.

	* dlls/winspool.drv/info.c:
	winspool.drv: Forward DeletePrinterDriverExA -> DeletePrinterDriverExW.

	* dlls/winspool.drv/info.c:
	winspool.drv: Forward DeletePrinterDriver -> DeletePrinterDriverEx.

2006-11-07  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/comctl32/tests/Makefile.in, dlls/comctl32/tests/string.c:
	comctl32: Beginning of some string related tests.

	* dlls/comctl32/string.c:
	comctl32: Fix return values of string functions.

2006-11-07  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/winex11.drv/bitblt.c:
	winex11: Fix regression caused by client-side DIB copy patch.

2006-11-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/locale.c, dlls/kernel32/process.c:
	kernel32: Better workaround for the lack of locale environment variables
	on MacOS.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Detect an XLookupString that returns Latin-1 and avoid codepage
	mapping in that case.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Added mapping for Unicode keysyms in ToUnicodeEx.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Only load the keycode->keysym mapping once in DetectLayout,
	instead of once per supported layout.

2006-11-07  Francois Gouget <fgouget@free.fr>

	* dlls/user/button.c, dlls/user/combo.c, dlls/user/mdi.c,
	  dlls/user/menu.c, dlls/user/resources/user32.rc,
	  dlls/user/tests/menu.c, dlls/user/user16.c, include/winuser.h,
	  programs/explorer/desktop.c, programs/progman/main.c:
	user32/include: Don't define the OBM_*, OCR_* and OIC_* macros unless OEMRESOURCE
	is defined.

	* dlls/urlmon/tests/misc.c:
	urlmon/tests: Fix compilation with the PSDK headers.

	* dlls/advapi32/registry.c, dlls/comctl32/pager.c, dlls/ddraw/device.c,
	  dlls/ddraw/viewport.c, dlls/dinput/effect_linuxinput.c,
	  dlls/dinput/joystick_linuxinput.c, dlls/dmstyle/commandtrack.c,
	  dlls/dplayx/dplay.c, dlls/dplayx/dplaysp.c, dlls/dsound/tests/ds3d.c,
	  dlls/dsound/tests/ds3d8.c, dlls/dsound/tests/dsound.c,
	  dlls/dsound/tests/dsound8.c, dlls/kernel32/tests/thread.c,
	  dlls/localspl/tests/localmon.c, dlls/lz32/tests/lzexpand_main.c,
	  dlls/mapi32/prop.c, dlls/mciseq/mcimidi.c, dlls/msi/tests/db.c,
	  dlls/ntdll/virtual.c, dlls/ole32/hglobalstream.c,
	  dlls/oleaut32/tests/vartest.c, dlls/oleaut32/typelib.c,
	  dlls/opengl32/wgl.c, dlls/quartz/videorenderer.c,
	  dlls/shdocvw/shlinstobj.c, dlls/shell32/cpanelfolder.c,
	  dlls/user/exticon.c, dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c, dlls/winex11.drv/xfont.c,
	  dlls/winmm/winealsa/audio.c, dlls/ws2_32/socket.c, include/cvconst.h,
	  include/winternl.h, programs/winecfg/En.rc,
	  programs/wineconsole/wineconsole.c, tools/wrc/CHANGES:
	Assorted spelling fixes.

	* include/d3d.h, include/d3d8.h, include/d3d9.h, include/ddraw.h,
	  include/dinput.h, include/dmplugin.h, include/dmusicc.h,
	  include/dmusicf.h, include/dmusici.h:
	include: Some DirectX headers are supposed to define COM_NO_WINDOWS_H.

	* dlls/oleaut32/tests/typelib.c:
	oleau32: The PSDK's ELEMDESC's union is nameless, always. So use the U(x) macro.

	* dlls/comctl32/tests/toolbar.c:
	comctl32: Add missing '\n' to ok() call.

	* dlls/dplayx/dplayx_global.c:
	dplayx: Fix spelling of the DPLAYX_AcquireSemaphore() macro.

	* dlls/dmstyle/dmstyle_private.h, dlls/dmstyle/style.c:
	dmstyle: Fix spelling of the DMUS_PRIVATE_STYLE_MOTIF.dwRhythm field.

	* programs/taskmgr/perfdata.c, programs/taskmgr/perfdata.h:
	taskmgr: Fix spelling of the SYSTEM_PERFORMANCE_INFORMATION.MmTotalCommittedPages
	field.

2006-11-07  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	msi: By default, install components locally.

	* dlls/msi/query.h, dlls/msi/sql.y, dlls/msi/tests/db.c, dlls/msi/where.c:
	msi: Fix WHERE IS (NOT) NULL queries.

	* dlls/msi/tests/db.c:
	msi: Fix regression tests failing on Windows.

	* dlls/msi/action.c:
	msi: Split ACTION_CostFinalize into two functions.

2006-11-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ole32/stg_prop.c:
	ole32: Cast-qual warnings fix.

	* dlls/ntdll/server.c:
	ntdll: Cast-qual warning fix.

2006-11-06  Markus Amsler <markus.amsler@oribi.org>

	* dlls/wined3d/surface.c:
	wined3d: Use width while converting surfaces.
	This fixes also a heap corruption with 1x1 and 2x2 surfaces.

	* dlls/wined3d/surface.c:
	wined3d: Use SURFACE_ALIGNMENT.

2006-11-06  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/atl/atl_ax.c:
	atl: Move the storage specifier to the beginning of the declaration.

2006-11-06  Jeff Latimer <lats@yless4u.com.au>

	* dlls/ntdll/handletable.c:
	ntdll: Clarify the documentation for HandleTable.

2006-11-06  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/Bg.rc, programs/winhelp/Cs.rc, programs/winhelp/Da.rc,
	  programs/winhelp/De.rc, programs/winhelp/En.rc,
	  programs/winhelp/Eo.rc, programs/winhelp/Es.rc,
	  programs/winhelp/Fi.rc, programs/winhelp/Fr.rc,
	  programs/winhelp/Hu.rc, programs/winhelp/It.rc,
	  programs/winhelp/Ko.rc, programs/winhelp/Nl.rc,
	  programs/winhelp/No.rc, programs/winhelp/Pl.rc,
	  programs/winhelp/Pt.rc, programs/winhelp/Ru.rc,
	  programs/winhelp/Si.rc, programs/winhelp/Sk.rc,
	  programs/winhelp/Sw.rc, programs/winhelp/Tr.rc,
	  programs/winhelp/Va.rc, programs/winhelp/Wa.rc,
	  programs/winhelp/Zh.rc, programs/winhelp/macro.c,
	  programs/winhelp/winhelp.c, programs/winhelp/winhelp.h,
	  programs/winhelp/winhelp_res.h:
	winhelp: Rewrite LookupHelpFile function.
	Add ability for user to find file himself if winhelp cannot find it.
	Update resources.

2006-11-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fixed build without OpenGL headers.

2006-11-04  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvcrt/file.c:
	msvcrt: Cast-qual warnings fix.

2006-11-03  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msacm32/driver.c:
	msacm32: Cast-qual warnings fix.

2006-11-03  Aric Stewart <aric@codeweavers.com>

	* dlls/shell32/shlexec.c:
	shell32: Have SHELL_ArgifyW respect the length of the buffer passed in and
	report a needed buffer size.

	* dlls/shell32/shlexec.c, dlls/shell32/tests/shlexec.c:
	shell32: Create dynamic buffers for expanded enviroment strings to allow for
	parameters and such longer than MAX_PATH.
	With help from Michael Moss.

2006-11-06  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/advapi32/tests/security.c:
	advapi32: Test for OpenProcessToken with MAXIMUM_ALLOWED access.

2006-11-06  Paul Chitescu <paulc@voip.null.ro>

	* dlls/mscoree/mscoree_main.c:
	mscoree: String returned by GetCORVersion starts with letter 'v'.

2006-11-06  Mike McCormack <mike@codeweavers.com>

	* dlls/user/user32.spec:
	user32: The string passed to ToUnicode(Ex) is for output.

	* dlls/winex11.drv/keyboard.c:
	user32: ToUnicodeEx should return 0 for an unknown key.

2006-11-05  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/dbghelp/dwarf.c:
	dbghelp: Make dwarf2 parser handle file paths relative to working dir better.

2006-11-04  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/ntlm.c:
	secur32: Test and fix DecryptMessage for multiple data buffers.

2006-11-04  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Add tests for EnumPorts.

	* dlls/winspool.drv/info.c:
	winspool: Implement EnumPortsA.

	* dlls/winspool.drv/info.c:
	winspool: Implement EnumPortsW.

	* dlls/winspool.drv/info.c:
	winspool: EnumPorts: Read driver from registry.

2006-11-04  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/winex11.drv/bitblt.c:
	winex11.drv: Added a basic client-side DIB copy optimization.

2006-11-06  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, include/config.h.in:
	configure: Added missing DiskArbitration/DiskArbitration.h check.

	* loader/.gitignore, loader/Makefile.in, loader/main.c:
	loader: Update the reported version from the current git HEAD if available.

	* dlls/ntdll/loader.c, loader/main.c:
	ntdll: Moved command-line help to the loader binary.

	* dlls/msi/msipriv.h, dlls/msi/table.c:
	msi: Fixed definition of the MSIITERHANDLE type.

2006-11-06  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/icmp/icmp_main.c:
	icmp: Changed select to poll.

	* dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c:
	dinput: Changed select to poll.

2006-11-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/ws2_32/socket.c:
	ws2_32: Convert WS_select to use poll() instead of select(). Also fixes an
	fd leak.

2006-11-05  Phil Krylov <phil.krylov@gmail.com>

	* configure, configure.ac, programs/explorer/diskarb.c:
	explorer: Build on Darwin versions prior to 8.0.

2006-11-06  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/ntdll/tape.c:
	ntdll: Fix building on Darwin versions prior to 8.0.

2006-11-05  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Remove unnecessary quotes in traces, as debugstr_a and debugstr_w add
	them instead.

	* tools/winedump/output.c:
	winedump: Fix printf warning in the generated code.

2006-11-05  Gerald Pfeifer <gerald@pfeifer.com>

	* server/fd.c:
	server: Compilation fix.

2006-11-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/source.c:
	dbghelp: Fixed memory leak in source string handling.

2006-11-05  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added more tests.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Cal on_offlineconnected_change and on_silent_change in SetClientSite.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Added OnAmbientPropertyChange(DISPID_AMBIENT_OFFLINECONNECTED)
	implementation.

	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Added [get|put]_Offline implementation.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Added OnAmbientPropertyChange(DISPID_AMBIENT_SILENT) implementation.

	* dlls/shdocvw/oleobject.c, dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Ignore hwndParent in DoVerb.

	* dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Set parent window in activate_inplace.

	* dlls/mshtml/olecmd.c:
	mshtml: Fixed query_edit_status when Gecko is not available.

2006-11-05  Mike McCormack <mike@codeweavers.com>

	* dlls/riched20/list.c:
	riched20: Fix a leak in the undo stack.

	* dlls/riched20/string.c:
	riched20: Fix one more memory leak.

	* dlls/riched20/editor.c:
	riched20: Don't access memory after freeing it.

	* dlls/riched20/editor.c:
	riched20: Fixed memory leaks.

	* dlls/comctl32/imagelist.c:
	comctl32: Switch to a Nx4 tiling.

	* dlls/comctl32/imagelist.c:
	comctl32: Remove a Nx1 assuption in ImageList_AddMasked().

	* dlls/comctl32/imagelist.c:
	comctl32: Check if GetObject fails on bitmaps passed to us.

	* dlls/comctl32/imagelist.c:
	comctl32: Fix Nx1 assumptions when adding multiple bitmaps with ImageList_Add.

	* dlls/comctl32/imagelist.c:
	comctl32: Fix an Nx1 in ImageList_DrawIndirect().

	* dlls/comctl32/imagelist.c:
	comctl32: Remove another Nx1 assumption from ImageList_Remove().

	* dlls/comctl32/imagelist.c:
	comctl32: Remove Nx1 assumptions in ImageList_Merge.

	* dlls/comctl32/imagelist.c:
	comctl32: Remove Nx1 assumptions in ImageList_GetIcon().

	* dlls/comctl32/imagelist.c:
	comctl32: Use imagelist_copy_images() in ImageList_SetImageCount().

	* dlls/comctl32/imagelist.c:
	comctl32: Create a helper function to copy a block of images.

	* dlls/comctl32/imagelist.c:
	comctl32: Fix a regression.

2006-11-04  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c:
	opengl32: Use HKCU instead of HKLM.

	* dlls/gdi32/driver.c, dlls/gdi32/gdi_private.h, dlls/gdi32/opengl.c,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/winex11.drv.spec:
	wgl: Fix WoW screen flickering.

2006-11-04  Alexandre Julliard <julliard@winehq.org>

	* loader/preloader.c:
	preloader: Clear %gs again before calling the interpreter entry point.

	* dlls/kernel32/tests/change.c:
	kernel32/tests: Don't wait for overlapped result if the previous test failed.

2006-11-04  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/secur32_priv.h,
	  dlls/secur32/tests/ntlm.c, dlls/secur32/util.c:
	secur32: Fix handling of buffers that don't have the SECBUFFER_TOKEN as the
	first buffer.
	Thanks to Robert Shearman for catching this one and providing some of the
	test code.

	* dlls/secur32/tests/ntlm.c:
	secur32: Get rid of some HeapAlloc() calls to make code more readable.

	* dlls/secur32/dispatcher.c, dlls/secur32/ntlm.c:
	secur32: Avoid double HeapFree() of password and session key.

2006-11-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c:
	opengl32: Remove glx context.

2006-11-03  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/device.c:
	d3d9/tests: Add refcount test for binding objects.

	* dlls/wined3d/device.c:
	wined3d: glReadPixels corrections.

2006-11-03  Huw Davies <huw@codeweavers.com>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: If the app asks for a single buffered pixel format, then it should
	be happy with a double buffered one.
	Likewise for mono vs stereo.
	Add some TRACEs so that we know what condition is failing.

2006-10-29  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.c,
	  dlls/opengl32/opengl_ext.h, dlls/opengl32/wgl.c:
	wgl: Add extension checking code / glxGetProcAddress protection.

2006-11-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c, include/wine/server_protocol.h, server/mailslot.c,
	  server/protocol.def, server/trace.c:
	ntdll: Retrieve mailslot message info from the client side.

	* dlls/ntdll/file.c, dlls/ntdll/ntdll_misc.h:
	ntdll: FILE_GetDeviceInfo no longer needs to be public.

	* libs/wine/ldt.c, loader/preloader.c:
	preloader: Setup a fake thread-local storage block pointed to by %gs.

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll.spec, include/winternl.h:
	ntdll: Added implementation of RtlDllShutdownInProgress.

2006-11-02  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Opengl init fix.

2006-11-01  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/mscoree/mscoree.spec, dlls/mscoree/mscoree_main.c:
	mscoree: Add a few more stubs.

2006-11-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/ws2_32/socket.c:
	ws2_32: Don't store the socket file descriptor in the async structure, retrieve
	it as needed.

	* dlls/ntdll/file.c:
	ntdll: Don't store the unix file descriptor in the async structure, retrieve
	it as needed.

	* dlls/ntdll/cdrom.c, dlls/ntdll/directory.c, dlls/ntdll/file.c,
	  dlls/ntdll/ntdll_misc.h, dlls/ntdll/serial.c, dlls/ntdll/server.c,
	  dlls/ntdll/tape.c, dlls/ntdll/virtual.c:
	ntdll: Added a server_get_unix_fd function that avoids doing a dup() of the
	fd when not required.

2006-11-02  Francois Gouget <fgouget@free.fr>

	* include/winbase.h:
	include: Fix the HeapQueryInformation() prototype.

	* programs/winhelp/macro.c:
	winhelp: Add missing '\n' in Wine trace.

2006-11-02  Rob Shearman <rob@codeweavers.com>

	* dlls/secur32/ntlm.c:
	secur32: Make the path to ntlm_auth easier to change by moving the executable
	name to the top of ntlm.c.

	* dlls/wininet/internet.c:
	wininet: Don't return an error for INTERNET_OPTION_SEND/RECEIVE_TIMEOUT not
	being implemented
	on protocols other than HTTP, just print a FIXME. Reported by Michael Moss.

2006-10-30  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/atl/atl.spec, dlls/atl/atl_ax.c, dlls/atl/atliface.idl:
	atl: Implement AtlAxCreateDialogA and AtlAxCreateDialogW.

	* dlls/atl/Makefile.in, dlls/atl/atl.spec, dlls/atl/atl_ax.c,
	  dlls/atl/atl_main.c, dlls/atl/atlbase.h, dlls/atl/atliface.idl:
	atl: Implement AtlAxCreateControl and AtlAxCreateControlEx.

	* dlls/atl/atl.spec, dlls/atl/atl_main.c, dlls/atl/atlbase.h:
	atl: Implement AtlModuleAddCreateWndData and AtlModuleExtractCreateWndData.

	* dlls/atl/Makefile.in, dlls/atl/atl_ax.c, dlls/atl/atl_main.c:
	atl: Implement AtlAxWinInit and AtlAxWin window procedure.

	* dlls/atl/Makefile.in, dlls/atl/atl.spec, dlls/atl/atl_main.c:
	atl: Implement AtlPixelToHiMetric and AtlHiMetricToPixel.

2006-11-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added implementation of QueryStatus(IDM_UNDERLINE).

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added implementation of QueryStatus(IDM_ITALIC).

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added more QueryStatus tests.

	* dlls/mshtml/olecmd.c:
	mshtml: Added implementation of QueryStatus(IDM_BOLD).

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added more edit mode tests.

	* dlls/mshtml/olecmd.c:
	mshtml: Load about:blank in exec_editmode.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/persist.c, dlls/mshtml/task.c:
	mshtml: Added beginning of set_progress task implementation.

	* dlls/mshtml/task.c:
	mshtml: Call SetStatusText in set_parsecomplete.

	* dlls/mshtml/persist.c:
	mshtml: Get DISPID_AMBIENT_SILENT and DISPID_AMBIENT_OFFLINECONNECTED property
	in IPersistMoniker::Load.

	* dlls/mshtml/persist.c:
	mshtml: Fix no longer valid ERR.

	* dlls/mshtml/nsio.c:
	mshtml: Added heuristic hack that decides if run the page from moniker or
	gecko channel.

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c:
	wininet: Revert commit 760043c2455a90cd74178d98b7c81bfbfc81793f.
	After more testing I've checked that current code is bad, but my patch
	was also wrong and causes regression in WoW.

2006-11-02  Huw Davies <huw@codeweavers.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Implement PSM_GETRESULT.

	* dlls/comctl32/propsheet.c:
	comctl32: Fix return value of PropertySheet() for modal propsheets.

2006-11-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/msg.c:
	user32/tests: Move the system menu test into its own test.

	* dlls/user/menu.c:
	user32: Check only for -1 and -2 as special values returned by
	MENU_ExecFocusedItem.

2006-11-02  Paul Chitescu <paulc@voip.null.ro>

	* dlls/msxml3/node.c:
	msxml3: Check parameters of IXMLDOMNode::insertBefore().

2006-11-02  Alexandre Julliard <julliard@winehq.org>

	* server/change.c, server/fd.c, server/file.c, server/file.h,
	  server/mailslot.c, server/mapping.c, server/named_pipe.c,
	  server/serial.c, server/sock.c:
	server: Refuse to close handles in other processes if they have an associated fd.

	* include/wine/server_protocol.h, server/console.c, server/debugger.c,
	  server/fd.c, server/handle.c, server/handle.h, server/named_pipe.c,
	  server/protocol.def, server/request.h, server/trace.c,
	  server/winstation.c:
	server: Get rid of the server-side file descriptor cache management.

	* dlls/ntdll/file.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/om.c,
	  dlls/ntdll/server.c, include/wine/server_protocol.h, server/fd.c,
	  server/handle.c, server/protocol.def, server/trace.c:
	ntdll: Maintain a file descriptor cache on the client side.

2006-11-01  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/toolbar.c:
	comctl32: toolbar: Add buttons size tests.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Use the width of the current button instead of nButtonWidth
	to position the icon.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: The SetButtonSize should not allow too small buttons.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: The top margin should be computed and saved in CalcToolbar.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Add a LayoutToolbar that works like CalcToolbar but doesn't
	overwrite the button sizes.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Fix buttons heights.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: The string should be included in the height of a button-less
	toolbar only if there is a string in the pool.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Add support for WM_SETFONT.

2006-11-02  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/comctl32/comctl32undoc.c, dlls/comctl32/string.c:
	comctl32: Move documented functions to string.c.

2006-11-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/win.c:
	user32/tests: Mask a not documented extended style 0x800 in WINDOWINFO before
	the comparison.

2006-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/helpers.c, dlls/msi/msipriv.h:
	msi: Avoid a memory leak by freeing actions scripts in one place only.

	* dlls/msi/source.c:
	msi: Fix a memory leak.

	* dlls/msi/tests/db.c:
	msi: Fix a handle leak in the tests.

	* dlls/riched20/editor.c, dlls/riched20/reader.c, dlls/riched20/rtf.h:
	riched20: Initialize and free the RTF lookup table in DllMain to avoid memory
	leaks.

	* dlls/riched20/reader.c:
	riched20: Use WARN() not ERR() on unknown tokens.

	* dlls/kernel32/heap.c, dlls/kernel32/kernel32.spec:
	kernel32: Add a stub for HeapSetInformation.

	* include/winbase.h, include/winnt.h:
	kernel32: Declare HeapQueryInformation and HeapSetInformation.

	* dlls/comctl32/imagelist.c:
	comctl32: imagelist: Remove more 1xN assumptions.

	* dlls/comctl32/imagelist.c:
	comctl32: Remove a redundant variable.

2006-11-01  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c, dlls/advpack/tests/install.c:
	advpack: Use the full path of the INF file as the source directory if the CAB
	file is invalid.

2006-11-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/sync.c, dlls/ntdll/file.c, include/winioctl.h:
	kernel32: Moved PeekNamedPipe implementation to ntdll.

	* dlls/kernel32/file.c:
	kernel32: Reimplemented SetFilePointerEx on top of ntdll functions.

2006-11-01  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	imagelist: Move Nx1 assumptions about bitmaps dimensions into a single function.

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

	* dlls/msi/handle.c:
	msi: Don't print traces for addref and release.

	* dlls/msi/action.c, dlls/msi/msipriv.h, dlls/msi/table.c:
	msi: Search the patch package for source cabinet files.

2006-10-31  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/kernel32/profile.c:
	kernel32: Cast-qual warnings fix.

	* dlls/kernel32/ne_segment.c:
	kernel32: Cast-qual warnings fix.

2006-11-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/server.c, include/wine/server_protocol.h, server/fd.c,
	  server/protocol.def, server/trace.c:
	server: Compute the removable device flag on the server side.

	* dlls/ntdll/server.c:
	ntdll: Simplify wine_server_handle_to_fd.
	Now that we have a critical section, races are no longer possible.

	* dlls/ntdll/file.c:
	ntdll: Added NetBSD fstatvfs support.

2006-10-31  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advpack/tests/install.c:
	advpack: Add another test.

	* dlls/advpack/tests/install.c:
	advpack: Fix typos.

2006-10-31  Huw Davies <huw@codeweavers.com>

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Don't fail if ole is already initialised.

2006-10-31  Markus Amsler <markus.amsler@oribi.org>

	* programs/cmd/builtins.c:
	cmd: Check for argument in copy, mkdir, delete, goto, move, rmdir, rename, type.

2006-10-31  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Set the AI_PASSIVE flag to getaddrinfo in rpcrt4_ip_tcp_open so that
	the bound-to port is connectable from other machines.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Improve the debug messages for failures in rpcrt4_ip_tcp_open.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Set the socket back to blocking in rpcrt4_conn_tcp_handoff as
	the read and write function for the protseq assume that syscalls will block.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Fix a typo in rpcrt4_ip_tcp_open that would cause the function
	to go into an infinite loop if getaddrinfo returned more than one entry.

	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Convert the named pipe server code to look directly into the
	connection to get at the wait handles, instead of using
	get_connect_wait_handle which isn't generic enough to be used for
	other protocols.
	Remove the unneeded get_connect_wait_handle function from the connection
	operations function list.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Eliminate the extra thread used for RPC over TCP/IP servers by adding
	socket-specific server protseq functions.

2006-10-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/opengl.c, dlls/winex11.drv/winex11.drv.spec:
	winex11.drv: Fixed the prototype of many OpenGL functions.

2006-10-31  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/gdi32/driver.c, dlls/gdi32/gdi_private.h, dlls/gdi32/opengl.c,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/winex11.drv.spec:
	winex11.drv: Route wglMakeContextCurrentARB through gdi32.

2006-10-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/winedos/int21.c:
	winedos: Use NT instead of Unix calls to identify DOS device pseudo-files.

	* dlls/kernel32/vxd.c:
	kernel32: Use NT instead of Unix calls to identify VxD pseudo-files.

2006-10-31  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DLINEPATTERN to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DPATCHEDGESTYLE to the WINED3D namespace.

	* dlls/wined3d/cubetexture.c, dlls/wined3d/device.c:
	wined3d: Use D3DCUBEMAP_FACES consistently in the WINED3D namespace.

	* dlls/wined3d/device.c:
	wined3d: Use D3DDEGREE consistently in the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DSTREAMSOURCE codes to the WINED3D namespace.

	* dlls/wined3d/device.c, include/wine/wined3d_types.h:
	wined3d: Add D3DCOLORWRITEENABLE codes to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c, dlls/wined3d/swapchain.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DCLEAR codes to the WINED3D namespace.

	* dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/texture.c, include/wine/wined3d_types.h:
	wined3d: Add D3DTSS_TCI codes to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/utils.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DFVF codes to the WINED3D namespace.

2006-10-31  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/secur32/tests/schannel.c:
	secur32: Make sure crashing tests are not run.

2006-10-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/file.c, dlls/kernel32/tests/file.c:
	kernel32: Fixed behavior of FindFirstFile for DOS devices.

2006-10-31  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Add a test showing a join doesn't need a WHERE clause.

	* dlls/msi/join.c, dlls/msi/query.h, dlls/msi/sql.y, dlls/msi/tests/db.c:
	msi: Use a simpler algorithm for joins.

	* dlls/msi/tests/db.c:
	msi: Test the data returned by join queries in one ok().

	* dlls/msi/sql.y, dlls/msi/tokenize.c:
	msi: Remove tokens that aren't valid for MSI SQL.

	* dlls/msi/alter.c:
	msi: Fix a trace.

	* dlls/msi/tests/db.c, dlls/msi/tokenize.c:
	msi: Fix the ALTER and FREE keywords in the tokenizer.

	* dlls/msi/action.c:
	msi: Mark components with missing or outdated files as incomplete.

	* dlls/comctl32/imagelist.c:
	comctl32: Remove some more Nx1 assumptions.

2006-10-30  Jacek Caban <jacek@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Inherit INET_CALLBACKW from parent handler.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use handle stored in WININETHANDLEHEADER instead of WININET_FindHandle.

2006-10-30  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Remove duplicate HeapFree().

	* dlls/gdi32/metafile.c:
	gdi32: Cast-qual warnings fix.

	* dlls/gdi32/freetype.c:
	gdi32: Cast-qual warnings fix.

2006-10-30  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/msvcrt/file.c, dlls/msvcrt/msvcrt.spec, dlls/msvcrt/tests/file.c:
	msvcrt: Add stub for _setmaxstdio + tiny test.

2006-10-30  Kovács András <andras@csevego.net>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/vertexshader.c:
	wined3d: Fix introduced regression in shader_glsl_mnxn and vshader_hw_mnxn.

2006-10-27  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Add tests for EnumPorts.

2006-10-28  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/localspl.rc, dlls/localspl/spl_De.rc:
	localspl: Add German resources.

2006-10-27  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/Makefile.in, dlls/localspl/localmon.c,
	  dlls/localspl/localspl.rc, dlls/localspl/localspl_private.h,
	  dlls/localspl/spl_En.rc:
	localspl: Implement EnumPortsW.

2006-10-27  Aric Stewart <aric@codeweavers.com>

	* dlls/shell32/shell32_main.c:
	shell32: ABM_NEW was using parameters that are not set.

2006-10-30  Kirill K. Smirnov <lich@math.spbu.ru>

	* tools/wine.inf:
	wine.inf: Associate .hlp files with winhelp.

2006-10-30  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/win.c, dlls/user/win.c:
	user32: Add a test for CreateWindow/DestroyWindow behaviour with WS_CHILD |
	WS_POPUP style, make it pass under Wine.

2006-10-30  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/crypt32/sip.c, dlls/crypt32/tests/sip.c:
	crypt32: Input parameter checking.

2006-10-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/tests/msg.c, dlls/user/winpos.c:
	user32: SetWindowRgn should call SetWindowPos, not RedrawWindow.

	* dlls/winecrt0/delay_load.c:
	winecrt0: Fix delay load structure types for Win64.

2006-10-29  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DMATERIALCOLORSOURCE to the WINED3D namespace.

	* dlls/wined3d/stateblock.c, dlls/wined3d/utils.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DCMPFUNC to the WINED3D namespace.

	* dlls/wined3d/stateblock.c, dlls/wined3d/utils.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DSTENCILOP to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DFILLMODE to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DCULL to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DSHADEMODE to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DBLENDOP to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/stateblock.c, include/wine/wined3d_types.h:
	wined3d: Add D3DFOGMODE to the WINED3D namespace.

2006-10-28  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Make GetTexture and GetSamplerState read from the correct stateblock.

	* dlls/wined3d/stateblock.c:
	wined3d: Set correct default for DMAPOFFSET sampler state.

	* dlls/wined3d/device.c:
	wined3d: Fix GetTexture() for uninitialized textures.

	* dlls/d3d9/tests/stateblock.c:
	d3d9: Make the "Tests executed" counter stable.

	* dlls/d3d9/tests/stateblock.c:
	d3d9: Pass test as argument to print handler.

2006-10-29  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlelem.c:
	mshtml: Added put_innerHTML implementation.

	* dlls/shlwapi/ordinal.c:
	shlwapi: Added SHQueueUserWorkItem implementation.

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c:
	wininet: Call SendCallback in destructor instead of InternetCloseHandle.

	* dlls/wininet/internet.c, dlls/wininet/internet.h,
	  dlls/wininet/utility.c:
	wininet: Store handle in WININETHANDLEHEADER and use it in SendCallback.

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/internet.h:
	wininet: Remove lpwhparent from WININETHANDLERHEADER.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Store WININETFTPSESSIONW pointer in WININETFTPFILEW.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Store WININETFTPSESSIONW pointer in WININETFTPFINDNEXTW.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Move ftp FindNextFile implementation to ftp.c.

	* dlls/wininet/dialogs.c, dlls/wininet/ftp.c, dlls/wininet/internet.c:
	wininet: Use lpAppInfo instead of lpwhparent where possible.

	* dlls/wininet/ftp.c, dlls/wininet/internet.h:
	wininet: Store WININETAPPINFOW pointer in WININETFTPSESSIONW.

	* dlls/wininet/dialogs.c, dlls/wininet/http.c:
	wininet: Use lpHttpSession instead of lpwhcalback where possible.

	* dlls/wininet/http.c, dlls/wininet/internet.h:
	wininet: Store pointer to WININETHTTPSESSIONW in WININETHTTPREQUESTW.

	* dlls/wininet/http.c:
	wininet: Use lpAppInfo instead of lpwhparent where possible.

	* dlls/wininet/http.c, dlls/wininet/internet.h:
	wininet: Store WININETAPPINFOW pointer in WININETHTTPSESSIONW.

2006-10-29  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/shell32/tests/shlfolder.c:
	shell32: Cast-qual warnings fix.

2006-10-28  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dbghelp/source.c:
	dbghelp: Cast-qual warnings fix.

	* dlls/dbghelp/path.c:
	dbghelp: Cast-qual warnings fix.

2006-10-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/gdi32/enhmetafile.c:
	gdi32: Cast-qual warnings fix.

	* dlls/gdi32/env.c:
	gdi32: Cast-qual warnings fix.

2006-10-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/d3d9/device.c, dlls/d3d9/volume.c, dlls/d3d9/volumetexture.c:
	d3d9: Cast-qual warnings fix.

2006-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	msi: Split ACTION_UpdateInstallStates into two separate functions.

2006-10-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/msg.c:
	user32: Flush painting events harder in some places in order to avoid races
	in the message tests.

	* dlls/user/tests/msg.c:
	user32: Properly log HCBT_KEYSKIPPED hook event, make the message
	tests pass cleanly under fully up to date XP SP2.

2006-10-28  Detlef Riekenberg <wine.dev@web.de>

	* programs/control/params.h:
	control.exe: Remove unused define.

2006-10-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsembed.c:
	mshtml: Print wine_gecko version in load_wine_gecko.

	* dlls/wininet/tests/http.c, include/wininet.h:
	wininet: Fixed declaration of INTERNET_STATUS_CALLBACK.

	* dlls/urlmon/tests/protocol.c:
	urlmon: Update winehq.org IP.

2006-10-28  Markus Amsler <markus.amsler@oribi.org>

	* dlls/wined3d/drawprim.c:
	wined3d: Respect ARB_VERTEX_BUFFER_OBJECT in loadVertexData.

2006-10-27  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/dmusic/dmusic.c:
	dmusic: Do not write outside of array bounds.

2006-10-27  Huw Davies <huw@codeweavers.com>

	* dlls/user/listbox.c, dlls/user/tests/listbox.c:
	user32: The hiword of the return value from LB_ITEMFROMPOINT should be
	a hittest on the item that's returned and not a hittest on the client
	area as MSDN states.

2006-10-27  Stephen R. Veit <sveit@tradeharbor.com>

	* dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Fix GetAdaptersInfo return value for IpMask.

2006-10-27  Alexandre Julliard <julliard@winehq.org>

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

----------------------------------------------------------------
2006-10-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/wined3d/directx.c:
	wined3d: Simplify some uses of the WineD3D_Context object.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: The WineD3D_GLContext structure doesn't need to be exported.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Fix a memory leak (spotted by Eric Pouech).

2006-10-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/crypt32/oid.c:
	crypt32: Cast-qual warnings fix.

2006-10-26  Kirill K Smirnov <Kirill.K.Smirnov@star.math.spbu.ru>

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h,
	  programs/winhelp/macro.c, programs/winhelp/winhelp.c,
	  programs/winhelp/winhelp.h:
	winhelp: Properly implement context help and JumpContext macro.

2006-10-24  Pierre d'Herbemont <pdherbemont@free.fr>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in, dlls/make_dlls,
	  dlls/winequartz.drv/Makefile.in,
	  dlls/winequartz.drv/quartzdrv_main.c,
	  dlls/winequartz.drv/winequartz.drv.spec, include/config.h.in:
	quartzdrv: Add the quartz (Mac OS X) video driver to the build system.

2006-10-27  Alexandre Julliard <julliard@winehq.org>

	* tools/winedump/dump.c:
	winedump: Avoid some dead code.

2006-10-25  Kovács András <andras@csevego.net>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/vertexshader.c:
	wined3d: Implement D3DSIO_MOVA in ARB backend.

2006-10-26  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/gdi32/driver.c, dlls/gdi32/gdi32.spec, dlls/gdi32/gdi_private.h,
	  dlls/gdi32/opengl.c, dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/winex11.drv.spec:
	wgl: Move part of wglGetProcAddress to gdi32.

2006-10-26  Duane Clark <fpga@pacbell.net>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Fix fread on large buffers in ascii mode.

2006-10-26  Kevin Krammer <kevin.krammer@gmx.at>

	* programs/winebrowser/main.c:
	winebrowser: Support for Portland Initiative scripts.

2006-10-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/file.c:
	kernel32: Close the directory handle in FindNextFile as soon as we reach the
	end of the directory.

2006-10-26  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/d3d8/device.c, dlls/d3d8/volume.c, dlls/d3d8/volumetexture.c:
	d3d8: Cast-qual warnings fix.

2006-10-27  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c, dlls/msi/tests/install.c:
	msi: Extract cabinets based on DiskId, not LastSequence.

2006-10-26  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/install.c:
	msi: Test the order in which cab files are handled in the Media table.

	* dlls/msi/dialog.c, dlls/msi/files.c, dlls/msi/msipriv.h,
	  dlls/msi/tests/install.c:
	msi: Implement handling for the ErrorDialog and use it to change media.

2006-10-27  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/files.c:
	msi: Avoid crashing if writeout_cabinet_stream fails.

	* dlls/msi/action.c:
	msi: Remove redundant null checks before MSI_EvaluateCondition.

2006-10-26  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Move code assuming Nx1 into ImageList_CreateImage.

2006-10-26  Detlef Riekenberg <wine.dev@web.de>

	* tools/wine.inf:
	tools/wine.inf: Add default printer ports.

2006-10-26  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: The allocation hint in request and response packets is just that -
	a hint.
	It is not an error if the stub data exceeds this size, so reallocate the
	buffer with the newly calculated size and continue.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Don't terminate the loop on the buffer becoming filled, but when we
	receive a packet with the RPC_FLG_LAST flag set.
	This matches what is mentioned in the DCE/RPC specification.

	* dlls/rpcrt4/rpc_defs.h, dlls/rpcrt4/rpc_message.c:
	rpcrt4: Fix RPCRT4_Receive to accept authentication verifier data on any packets,
	not just bind packets.

	* dlls/ole32/rpc.c:
	ole32: Fix a memory leak on the error path of dispatch_rpc.

	* dlls/oleaut32/typelib.c:
	oleaut32: Update comments at the top of typelib.c and remove "stub" from
	several traces that are in implemented functions.

	* dlls/ole32/oleproxy.c:
	ole32: Fix some memory leaks in the class factory proxy.

	* dlls/ole32/oleproxy.c:
	ole32: Always call IRpcChannelBuffer_GetBuffer in the class factory stub.

2006-10-25  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/factory.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/urlhist.c:
	shdocvw: Added CUrlHistory stub implementation.

	* dlls/uuid/uuid.c, include/.gitignore, include/Makefile.in,
	  include/urlhist.idl:
	include: Added urlhist.idl.

2006-10-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/mouse.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/winpos.c, dlls/winex11.drv/xinerama.c:
	winex11.drv: Offset X11 coordinates with the primary monitor position.
	No longer force the primary monitor to contain the X11 (0,0) coordinate.

	* server/window.c:
	server: Always ignore the root window position when computing coordinates
	offsets.

2006-10-24  David Anderson <davea42@earthlink.net>

	* dlls/dbghelp/dwarf.c:
	dbghelp: Avoid printing too many "What the heck" messages from winedbg.

2006-10-26  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/ddraw/device.c:
	ddraw: Add missing dereference operators.

2006-10-26  Marcus Meissner <marcus@jet.franken.de>

	* dlls/mshtml/olecmd.c:
	mshtml: Moved release of dom_window to right place.

2006-10-26  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/join.c, dlls/msi/tests/db.c:
	msi: Fix the join algorithm.

	* dlls/msi/sql.y, dlls/msi/tests/db.c, dlls/msi/update.c:
	msi: Allow UPDATE queries without a condition.

	* dlls/msi/delete.c, dlls/msi/msipriv.h, dlls/msi/select.c,
	  dlls/msi/table.c, dlls/msi/update.c, dlls/msi/where.c:
	msi: Update tables using records, not integer by integer.

	* dlls/msi/alter.c, dlls/msi/delete.c, dlls/msi/join.c:
	msi: Remove some unused functions.

	* dlls/msi/insert.c, dlls/msi/query.h, dlls/msi/tests/db.c,
	  dlls/msi/update.c:
	msi: Fixed the UPDATE query to work with explicit values.

	* dlls/msi/action.c, dlls/msi/dialog.c, dlls/msi/events.c,
	  dlls/msi/helpers.c, dlls/msi/install.c, dlls/msi/msipriv.h:
	msi: Use msi_feature_set_state and msi_component_set_state where possible.

	* dlls/msi/action.c:
	msi: Create macro functions to set feature and component states.

2006-10-25  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/db.c:
	msi: Add tests for the UPDATE sql command.

2006-10-25  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comdlg32/filedlg.c:
	comdlg32: Select the Filename edit box content after the user navigated to a
	directory by entering there the name.

2006-10-24  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/kernel32/Makefile.in, dlls/kernel32/kernel.rc,
	  dlls/kernel32/nls/winerr_kor.mc:
	kernel32: Added winerr_kor.mc.

2006-10-25  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_server.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Move transport-specific server functions to rpc_transport.c.

2006-10-25  Oleg Krylov <oleg.krylov@gmail.com>

	* dlls/comctl32/commctrl.c, dlls/comctl32/tab.c, dlls/comctl32/toolbar.c,
	  dlls/comctl32/trackbar.c:
	comctl32: Create tooltip windows with WS_POPUP style.

	* dlls/comctl32/status.c:
	comctl32: statusbar: Create tooltip window with WS_POPUP and TTS_ALWAYSTIP style.

2006-10-25  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/direct3d.c, dlls/ddraw/surface.c:
	ddraw: Forward the depth stencil buffer to wined3d.

2006-10-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/winpos.c:
	user32: Fixed maximized window size on multi-monitor setups.

	* programs/winhelp/winhelp.c:
	winhelp: Properly handle negative coordinates for mouse events.

	* programs/winemine/main.c, programs/winemine/main.h:
	winemine: Properly handle negative coordinates for mouse events.

	* programs/winefile/winefile.c:
	winefile: Properly handle negative coordinates for mouse events.

	* programs/wineconsole/user.c:
	wineconsole: Properly handle negative coordinates for mouse events.

	* programs/regedit/childwnd.c:
	regedit: Properly handle negative coordinates for mouse events.

	* programs/oleview/pane.c:
	oleview: Properly handle negative coordinates for mouse events.

	* dlls/user/button.c, dlls/user/combo.c, dlls/user/listbox.c,
	  dlls/user/menu.c, dlls/user/message.c, dlls/user/win.c:
	user32: Properly handle negative coordinates for mouse events.

	* dlls/shell32/control.c:
	shell32: Properly handle negative coordinates for mouse events.

	* dlls/msi/dialog.c:
	msi: Properly handle negative coordinates for mouse events.

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Properly handle negative coordinates for mouse events.

	* dlls/comctl32/header.c, dlls/comctl32/monthcal.c, dlls/comctl32/rebar.c,
	  dlls/comctl32/status.c, dlls/comctl32/syslink.c, dlls/comctl32/tab.c,
	  dlls/comctl32/theme_combo.c, dlls/comctl32/toolbar.c,
	  dlls/comctl32/tooltips.c, dlls/comctl32/treeview.c:
	comctl32: Properly handle negative coordinates for mouse events.

2006-10-25  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Create a point from index function and use it.

2006-10-25  Kovács András <andras@csevego.net>

	* dlls/mlang/mlang.c:
	mlang: Set fnIMLangFontLink_GetStrCodePages stub return values.

2006-10-24  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/crypt32/crl.c, dlls/crypt32/decode.c, dlls/crypt32/encode.c:
	crypt32: Cast-qual warnings fix.

2006-10-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/process.c:
	kernel32: Exit from initial thread with ExitThread not by ExitProcess.

2006-10-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/xinerama.c:
	Revert "kernel32: Exit from initial thread with ExitThread not by ExitProcess."
	This reverts commit 5a1fd50db345c1de97d9d02133728a6080d2848b.
	I committed the wrong file.

2006-10-24  Aric Stewart <aric@codeweavers.com>

	* dlls/winex11.drv/xim.c:
	winex11.drv: Only create a fontSet if we are going to be using it in the XIC.

2006-10-24  Detlef Riekenberg <wine.dev@web.de>

	* dlls/user/win.c:
	user: Remove wrong comment.

2006-10-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/xinerama.c:
	kernel32: Exit from initial thread with ExitThread not by ExitProcess.

2006-10-24  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/surface.c, include/wine/wined3d_types.h:
	wined3d: Add D3DZBUFFERTYPE to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DBLEND to the WINED3D namespace.

	* dlls/ddraw/device.c, dlls/wined3d/stateblock.c, dlls/wined3d/utils.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DTA masks to the WINED3D namespace.
	Also fix usage of D3DTSS/D3DTA in ddraw.

	* dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private_types.h:
	wined3d: Add D3DVS_RASTOUT_OFFSETS to the WINED3D namespace.

	* dlls/wined3d/basetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DTADDRESS to the WINED3D namespace.

	* dlls/wined3d/surface_gdi.c, dlls/wined3d/vertexbuffer.c:
	wined3d: D3DLOCK: Use consistently in the WINED3D namespace.

2006-10-24  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c:
	usp10: Add tests for ScriptStringCptoX and ScriptStringXtoCp for activation
	in later patches.

	* dlls/usp10/tests/usp10.c:
	usp10: Add tests for ScriptStringAnalyse and ScriptStringFree.

2006-10-24  Francois Gouget <fgouget@free.fr>

	* dlls/amstream/main.c, dlls/amstream/regsvr.c,
	  dlls/avicap32/avicap32_main.c, dlls/avifil32/acmstream.c,
	  dlls/avifil32/api.c, dlls/avifil32/avifile.c,
	  dlls/avifil32/editstream.c, dlls/avifil32/extrachunk.c,
	  dlls/avifil32/factory.c, dlls/avifil32/getframe.c,
	  dlls/avifil32/icmstream.c, dlls/avifil32/regsvr.c,
	  dlls/avifil32/tmpfile.c, dlls/avifil32/wavfile.c,
	  dlls/comcat/comcat_private.h, dlls/comcat/regsvr.c,
	  dlls/comctl32/animate.c, dlls/comdlg32/cdlg.h,
	  dlls/comdlg32/cdlg16.h, dlls/comdlg32/filedlgbrowser.h,
	  dlls/d3dxof/main.c, dlls/d3dxof/regsvr.c,
	  dlls/devenum/devenum_private.h, dlls/dxdiagn/regsvr.c,
	  dlls/dxerr8/dxerr8.c, dlls/dxerr9/dxerr9.c, dlls/dxguid/dx8guid.c,
	  dlls/dxguid/dx9guid.c, dlls/dxguid/dxguid.c,
	  dlls/hhctrl.ocx/regsvr.c, dlls/mciavi32/private_mciavi.h,
	  dlls/msdmo/dmoreg.c, dlls/msdmo/dmort.c,
	  dlls/msrle32/msrle_private.h, dlls/msvfw32/msvideo16.c,
	  dlls/msvfw32/msvideo_main.c, dlls/objsel/objsel_private.h,
	  dlls/oledlg/oledlg_main.c, dlls/oledlg/pastespl.c,
	  dlls/olepro32/olepro32stubs.c, dlls/quartz/enummoniker.c,
	  dlls/quartz/filtergraph.c, dlls/quartz/filtermapper.c,
	  dlls/quartz/regsvr.c, dlls/quartz/systemclock.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/shlinstobj.c,
	  dlls/shlwapi/msgbox.c, dlls/shlwapi/ordinal.c, dlls/shlwapi/string.c,
	  dlls/strmiids/strmiids.c, dlls/urlmon/regsvr.c, dlls/urlmon/umon.c,
	  dlls/uuid/uuid.c, dlls/winex11.drv/event.c, dlls/wininet/urlcache.c,
	  include/mediaobj.idl:
	Don't include windows.h & co in the Wine sources.
	Remove uneeded COM_NO_WINDOWS_H defines.

2006-10-24  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Fix a crash in dump_DispParms when running the typelib test with
	debug tracing on.

	* dlls/oleaut32/typelib.c:
	oleaut32: Free the array subscript memory for type descriptions when freeing
	the typelib.

	* dlls/oleaut32/tests/typelib.c:
	oleaut32: Fix a reference count leak in the typelib test.

	* dlls/oleaut32/typelib.c:
	oleaut32: Fix a reference count leak in CreateDispTypeInfo.

	* dlls/oleaut32/typelib.c:
	oleaut32: Initialise all members of the FUNCDESC structure in CreateDispTypeInfo.

2006-10-24  Huw Davies <huw@codeweavers.com>

	* dlls/winex11.drv/xim.c:
	winex11.drv: Only initialize static variables once per process.

	* dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Give XCloseIM another chance.

2006-10-24  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/oledlg/oledlg_Fr.rc:
	oledlg: Updated French translation.

	* programs/wineconsole/wineconsole_Fr.rc:
	wineconsole: Updated French translation.

2006-10-24  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/avifil32/avifile_Nl.rc, dlls/comctl32/comctl_Nl.rc,
	  dlls/comdlg32/cdlg_Nl.rc, dlls/gphoto2.ds/gphoto2_Nl.rc,
	  dlls/hhctrl.ocx/Nl.rc, dlls/mpr/mpr_Nl.rc, dlls/msacm32/msacm_Nl.rc,
	  dlls/mshtml/Nl.rc, dlls/msi/msi_Nl.rc, dlls/msrle32/msrle_Nl.rc,
	  dlls/oleaut32/oleaut32_Nl.rc, dlls/oledlg/oledlg_Nl.rc,
	  dlls/sane.ds/sane_Nl.rc, dlls/serialui/Nl.rc, dlls/setupapi/Nl.rc,
	  dlls/shdocvw/Nl.rc, dlls/shell32/shell32_Nl.rc,
	  dlls/shlwapi/shlwapi_Nl.rc, dlls/user/resources/user32_Nl.rc,
	  dlls/wineps.drv/wps_Nl.rc, dlls/wininet/wininet_Nl.rc,
	  dlls/winmm/winmm_Nl.rc, dlls/winspool.drv/Nl.rc,
	  dlls/wldap32/wldap32_Nl.rc, programs/clock/Nl.rc, programs/cmd/Nl.rc,
	  programs/cmdlgtst/Nl.rc, programs/notepad/Nl.rc,
	  programs/progman/Nl.rc, programs/regedit/Nl.rc, programs/start/Nl.rc,
	  programs/taskmgr/Nl.rc, programs/view/Nl.rc, programs/winecfg/Nl.rc,
	  programs/wineconsole/wineconsole_Nl.rc, programs/winefile/Nl.rc,
	  programs/winemine/Nl.rc, programs/winhelp/Nl.rc,
	  programs/wordpad/Nl.rc:
	resources: Change Dutch sublanguage code to SUBLANG_NEUTRAL.

2006-10-24  Alexandre Julliard <julliard@winehq.org>

	* programs/notepad/main.c, programs/notepad/main.h:
	notepad: Fallback to default position if saved position if off-screen.

	* dlls/user/misc.c:
	user: Make sure the desktop window exists before calling monitor functions.

2006-10-24  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/oledlg/oledlg_Ko.rc:
	oledlg: Updated Korean resource.

2006-10-24  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/avifil32/avifile_De.rc, dlls/comctl32/comctl_De.rc,
	  dlls/comdlg32/cdlg_De.rc, dlls/crypt32/crypt32_De.rc,
	  dlls/devenum/devenum.rc, dlls/hhctrl.ocx/De.rc,
	  dlls/iccvid/iccvid_De.rc, dlls/kernel32/nls/winerr_deu.mc,
	  dlls/mpr/mpr_De.rc, dlls/msacm32/msacm_De.rc, dlls/mshtml/De.rc,
	  dlls/msi/msi_De.rc, dlls/msrle32/msrle_De.rc,
	  dlls/msvfw32/msvfw32_De.rc, dlls/msvidc32/msvidc32_De.rc,
	  dlls/oleaut32/oleaut32_De.rc, dlls/oledlg/oledlg_De.rc,
	  dlls/sane.ds/sane_De.rc, dlls/serialui/De.rc, dlls/setupapi/De.rc,
	  dlls/shdocvw/De.rc, dlls/shell32/shell32_De.rc,
	  dlls/shlwapi/shlwapi_De.rc, dlls/user/resources/user32_De.rc,
	  dlls/wineps.drv/wps_De.rc, dlls/wininet/wininet_De.rc,
	  dlls/winmm/winmm_De.rc, dlls/winspool.drv/De.rc,
	  dlls/wldap32/wldap32_De.rc, programs/clock/De.rc, programs/cmd/De.rc,
	  programs/cmdlgtst/De.rc, programs/notepad/De.rc,
	  programs/progman/De.rc, programs/regedit/De.rc, programs/start/De.rc,
	  programs/taskmgr/De.rc, programs/view/De.rc, programs/winecfg/De.rc,
	  programs/wineconsole/wineconsole_De.rc, programs/winefile/De.rc,
	  programs/winemine/De.rc, programs/winhelp/De.rc,
	  programs/wordpad/De.rc:
	resources: Change German sublanguage code to SUBLANG_NEUTRAL.

2006-10-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	msi: Split code to get a file's verion into a separate comment.

	* dlls/riched20/clipboard.c, dlls/riched20/editor.c,
	  dlls/riched20/editor.h, dlls/riched20/reader.c,
	  dlls/riched20/richole.c:
	riched20: Create macro functions for allocating and freeing memory.

	* dlls/riched20/clipboard.c:
	riched20: Make sure to use GlobalAlloc with GlobalFree.

2006-10-23  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c, dlls/advpack/tests/install.c:
	advpack: Fix the full path check.

	* dlls/msi/tests/install.c:
	msi: Add tests for installing from continuous cabinets.

	* dlls/msi/tests/install.c:
	msi: Allow more customization of install test files.

	* dlls/msi/tests/install.c:
	msi: Remove unused function pointer and definitions.

	* dlls/msi/tests/install.c:
	msi: Remove two unnecessary install tables.

	* dlls/msi/database.c, dlls/msi/tests/install.c:
	msi: Add support for localizable strings in MsiDatabaseImport.

2006-10-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added video/mpeg mime filter.

	* dlls/urlmon/urlmon_main.c:
	urlmon: Code clean up.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added video/avi mime filter implementation.

2006-10-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user/dde_client.c:
	user: Remove superfluous shadow variable.

	* dlls/crypt32/cert.c:
	crypt32: Cast-qual warnings fix.

2006-10-23  Huw Davies <huw@codeweavers.com>

	* dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Initialize data->xim to NULL if xim has been disabled.

2006-10-23  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/regedit/edit.c:
	regedit: Initialize a variable (Coverity).

2006-10-23  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/comctl32/tests/toolbar.c:
	comctl32/tests: Specify type of function argument and remove unused arguments.

2006-10-22  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/netapi32/wksta.c:
	netapi32: Fix the size of allocation for the string returned from
	NetpGetComputerName.

	* dlls/ole32/clipboard.c:
	ole32: Fixed some wrong conditions in OleFlushClipboard.

	* dlls/ole32/compobj.c:
	ole32: CoUninitialize: No longer access an object after it's been freed.

	* dlls/msxml3/nodelist.c:
	msxml: Fixed list walking in xmlnodelist_get_length.

	* dlls/gdi32/enhmfdrv/graphics.c:
	gdi32: Better error handling in enhanced metafile.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: As the min keycode is always greater or equal to 8, we
	don't need to scan XKeymapEvent.key_vector from 0 but from 8.

2006-10-22  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winmm/wineoss/midi.c:
	wineoss: On non-OSS systems define MidiExit too.

	* dlls/iphlpapi/ifenum.c:
	iphlpapi: NetBSD needs sys/param.h.

2006-10-21  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/localspl_main.c, dlls/localspl/localspl_private.h:
	localspl: Remember hInstance, needed for resources.

	* dlls/localspl/Makefile.in, dlls/localspl/localspl.rc:
	localspl: Add version resource.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Fallback to localmon.dll on NT4.0.

2006-10-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/dialog.c, dlls/user/dialog16.c, dlls/user/misc.c,
	  dlls/user/tests/monitor.c, dlls/user/win.c:
	user: Fixed MonitorFromWindow behavior for an invalid window handle.

2006-10-23  Francois Gouget <fgouget@free.fr>

	* dlls/msi/tests/suminfo.c:
	msi/tests: Fix compilation with gcc 2.95.

	* programs/oleview/typelib.c:
	oleview: Fix compilation with gcc 2.95.

2006-10-23  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fix a missing ITypeInfo::ReleaseTypeAttr in the typelib marshaling
	code.

	* dlls/oleaut32/typelib.c:
	oleaut32: Fix two more leaks on type info destruction.

	* dlls/oleaut32/typelib.c:
	oleaut32: Rewrite MSFT_ReadName and MSFT_ReadString to need one less allocation
	and to fix a memory leak.

	* dlls/oleaut32/typelib.c:
	oleaut32: Free allocated memory on typelib and typeinfo destruction.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fix some reference count and memory leaks in the typelib marshaling
	code.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fix memory leaks after calling ITypeInfo::GetNames.

	* dlls/ole32/tests/marshal.c:
	ole32: Fix some memory leaks in the marshal tests.

	* dlls/comctl32/tests/imagelist.c:
	comctl32: Fix imagelist leak in tests.

2006-10-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/class.c, dlls/user/tests/class.c:
	user32: Make the test pass for GetClassName called on a small buffer.

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: Make QueryPathOfRegTypeLib test pass under Wine.

	* dlls/oleaut32/tests/Makefile.in, dlls/oleaut32/tests/typelib.c:
	oleaut32: Add a test for QueryPathOfRegTypeLib.

2006-10-22  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shlwapi/string.c, dlls/shlwapi/tests/string.c:
	shlwapi: Test and fix StrRStrI[AW].

	* dlls/shlwapi/tests/string.c:
	shlwapi/tests: Disable the StrFromTimeInterval tests as they are
	language-dependent.

	* dlls/shlwapi/tests/string.c:
	shlwapi/tests: Enable the locale-dependent tests if the delimiters are correct.

	* dlls/shlwapi/tests/string.c:
	shlwapi/tests: Make the string.c tests compile in Visual C++.

	* programs/notepad/Bg.rc, programs/notepad/Cs.rc, programs/notepad/Da.rc,
	  programs/notepad/De.rc, programs/notepad/En.rc,
	  programs/notepad/Es.rc, programs/notepad/Fi.rc,
	  programs/notepad/Fr.rc, programs/notepad/Hu.rc,
	  programs/notepad/It.rc, programs/notepad/Ja.rc,
	  programs/notepad/Ko.rc, programs/notepad/Nl.rc,
	  programs/notepad/No.rc, programs/notepad/Pl.rc,
	  programs/notepad/Pt.rc, programs/notepad/Ru.rc,
	  programs/notepad/Si.rc, programs/notepad/Sk.rc,
	  programs/notepad/Sw.rc, programs/notepad/Th.rc,
	  programs/notepad/Tr.rc, programs/notepad/Wa.rc,
	  programs/notepad/Zh.rc:
	notepad: Fix ellipsis in menu items.

	* programs/notepad/dialog.c, programs/notepad/main.c,
	  programs/notepad/main.h:
	notepad: Implement Find and Find Next.

	* programs/notepad/Makefile.in, programs/notepad/dialog.c,
	  programs/notepad/dialog.h:
	notepad: Add a generic function for message boxes with a string parameter.

2006-10-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comdlg32/filedlg31.c:
	comdlg32: Cast-qual warning fix.

	* dlls/comdlg32/colordlg.c:
	comdlg32: Cast-qual warnings fix.

2006-10-20  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/datetime.c:
	comctl32: Cast-qual warnings fix.

2006-10-22  Markus Amsler <markus.amsler@oribi.org>

	* dlls/msvcrt/heap.c:
	msvcrt: Speed up new operator.

2006-10-20  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/mshtml/nsembed.c:
	mshtml: Insert missing "return" operator.

2006-10-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/sysparams.c, dlls/user/tests/sysparams.c:
	user: Adapt system metrics for multi-monitor setups.

	* dlls/comctl32/tooltips.c:
	comctl32: Position the tooltip window correctly on multi-monitor setups.

	* dlls/user/winpos.c:
	user: Maximize windows to the right monitor on multi-monitor setups.

	* dlls/user/combo.c:
	user: Fixed combo box drop position on multi-monitor setups.

	* dlls/user/dialog.c, dlls/user/dialog16.c:
	user: Take multiple monitors into account when placing a dialog.

	* dlls/user/win.c:
	user: Take multiple monitors into account when placing a window.

	* dlls/user/menu.c:
	user: Take multiple monitors into account when placing a popup menu.

	* dlls/user/driver.c, dlls/user/misc.c, dlls/user/user_private.h,
	  dlls/winex11.drv/winex11.drv.spec, dlls/winex11.drv/xinerama.c:
	user: Moved GetMonitorInfo and EnumDisplayMonitors to the display driver.
	Added Xinerama support for these functions.

	* dlls/winex11.drv/Makefile.in, dlls/winex11.drv/bitblt.c,
	  dlls/winex11.drv/desktop.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/winpos.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c, dlls/winex11.drv/xinerama.c:
	winex11.drv: Preliminary support for Xinerama.

	* configure, configure.ac, include/config.h.in:
	configure: Check for the Xinerama extension.

2006-10-23  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/oledlg/oledlg_Ko.rc:
	oledlg: Updated Korean resource.

	* programs/wineconsole/wineconsole_Ko.rc:
	wineconsole: Updated Korean resource.

2006-10-23  Mike McCormack <mike@codeweavers.com>

	* dlls/user/tests/class.c:
	user32: Add a test showing a problem in GetClassNameA.

2006-10-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Fix insertion of null integers into a table.

	* dlls/msi/tests/db.c, dlls/msi/tests/package.c, dlls/msi/tokenize.c:
	msi: Add the column type INTEGER as an alias for INT.

	* dlls/msi/action.c, dlls/msi/msipriv.h, dlls/msi/suminfo.c:
	msi: Only apply transforms that are valid for a database.

	* dlls/msi/action.c, dlls/msi/database.c, dlls/msi/msipriv.h,
	  dlls/msi/suminfo.c:
	msi: Initialize the summary information from a storage interface, not a db.

2006-10-21  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* programs/notepad/Ko.rc:
	notepad: Update Korean resources.

	* programs/oleview/Ko.rc:
	oleview: Update Korean resources.

	* programs/winefile/Ko.rc:
	winefile: Update Korean resources.

2006-10-20  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/dnsapi.spec, dlls/dnsapi/main.c:
	dnsapi: Add stubs for DnsWriteQuestionToBuffer_{UTF8,W}.

2006-10-22  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/wineconsole/wineconsole_Pl.rc:
	wineconsole: Fix Polish translation.

	* programs/wineconsole/dialog.c:
	wineconsole: Check one of the radio buttons in the "Save settings" dialog.

	* programs/wineconsole/wineconsole_En.rc:
	wineconsole: En.rc: Enlarge the "save console settings" dialog to avoid cropping
	of text.

	* dlls/comdlg32/cdlg_Pl.rc:
	comdlg32: Pl.rc: Enlarge the Find dialog to show the whole radio buttons text.

	* dlls/hhctrl.ocx/Pl.rc, dlls/hhctrl.ocx/hhctrl.rc:
	hhctrl.ocx: Add Polish translation.

	* dlls/oledlg/oledlg_Pl.rc, dlls/oledlg/rsrc.rc:
	oledlg: Add Polish translation.

2006-10-22  Frank Richter <frank.richter@gmail.com>

	* programs/wineconsole/wineconsole_De.rc:
	wineconsole: Update German translation.

	* programs/oleview/De.rc, programs/oleview/rsrc.rc:
	oleview: Add German translation.

	* dlls/gphoto2.ds/gphoto2_De.rc, dlls/gphoto2.ds/rsrc.rc:
	gphoto2.ds: Add German translation.

	* programs/winefile/De.rc:
	winefile: Update German translation.

	* programs/taskmgr/De.rc:
	taskmgr: Update German translation.

	* programs/regedit/De.rc:
	regedit: Update German translation.

	* programs/progman/De.rc:
	progman: Update German translation.

	* programs/notepad/De.rc:
	notepad: Update German translation.

	* programs/cmdlgtst/De.rc:
	cmdlgtst: Update German translation.

	* programs/clock/De.rc:
	clock: Update German translation.

	* dlls/oledlg/oledlg_De.rc:
	oledlg: Update German translation.

	* dlls/mshtml/Bg.rc, dlls/mshtml/De.rc, dlls/mshtml/En.rc,
	  dlls/mshtml/Es.rc, dlls/mshtml/Fr.rc, dlls/mshtml/Ko.rc,
	  dlls/mshtml/No.rc, dlls/mshtml/Sv.rc, dlls/mshtml/Tr.rc:
	mshtml: Left-align Gecko download information message for better readability.

	* dlls/mshtml/Es.rc, dlls/mshtml/Fr.rc, dlls/mshtml/Tr.rc:
	mshtml: Enlarge status text control ins some translated dialogs so all text
	is readable.

	* dlls/mshtml/De.rc:
	mshtml: Update German translation.

2006-10-20  Huw Davies <huw@codeweavers.com>

	* dlls/oledlg/pastespl.c:
	oledlg: Only send the end dialog msg if the button is actually clicked.

2006-10-21  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added image/tiff mime filter.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Fix windows style of windows without parents.

2006-10-20  Jacek Caban <jacek@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Use HTTP_ADDHDR_FLAG_REPLACE flag in HTTP_HttpSendRequest to add
	Content-Length header.

	* dlls/mshtml/htmlelem.c:
	mshtml: Added IHTMLElement::get_className implementation.

	* dlls/mshtml/htmlselect.c:
	mshtml: Don't return empty string in IHTMLSelectElement::get_name.

2006-10-21  Jeff Latimer <lats@yless4u.com.au>

	* tools/runtest:
	tools: Add addtional help to runtest.

2006-10-21  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/advapi32/lsa.c:
	advapi32: Fixed a couple items from previous patch (spotted by G Pfeifer).

	* programs/winedbg/be_i386.c:
	winedbg: Added a few more cases where we inspect if i386 instructions
	are actually calls (based on previous work by Jeff Latimer).

	* configure, configure.ac:
	configure: Now that we have dwarf support for debug info, don't force stabs
	as debug info format.

	* server/sock.c:
	winsock: Clear the held mask with the requested events so that they can be
	signaled.

	* dlls/advpack/advpack.c, dlls/advpack/files.c:
	advpack: Plug a couple of memory leaks.

2006-10-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/dnsapi/ns_parse.c:
	dnsapi: Avoid non-portable types.

2006-10-18  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Added support for RPC TCP servers.

2006-10-18  Francois Gouget <fgouget@codeweavers.com>

	* dlls/wininet/internet.c:
	wininet: HttpSendRequestW() returns ERROR_IO_PENDING when called on an async
	socket. But that does not mean that it failed.

2006-10-18  Francois Gouget <fgouget@free.fr>

	* dlls/dinput/joystick_linuxinput.c, dlls/oleaut32/tmarshal.c:
	Add '\n's to Wine traces.

2006-10-19  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/heap.c:
	ntdll: Added debug support for notifying block allocation / freeing.

2006-10-17  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/advapi32/lsa.c, dlls/advapi32/registry.c,
	  dlls/advapi32/tests/security.c:
	advapi32: Plug a couple of memory leaks.

2006-10-19  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/avifil32/avifile_Ko.rc, dlls/comctl32/comctl_Ko.rc,
	  dlls/comdlg32/cdlg_Ko.rc, dlls/crypt32/crypt32_Ko.rc,
	  dlls/gphoto2.ds/gphoto2_Ko.rc, dlls/hhctrl.ocx/Ko.rc,
	  dlls/iccvid/iccvid_Ko.rc, dlls/mpr/mpr_Ko.rc,
	  dlls/msacm32/msacm_Ko.rc, dlls/mshtml/Ko.rc, dlls/msi/msi_Ko.rc,
	  dlls/msrle32/msrle_Ko.rc, dlls/msvfw32/msvfw32_Ko.rc,
	  dlls/msvidc32/msvidc32_Ko.rc, dlls/oleaut32/oleaut32_Ko.rc,
	  dlls/oledlg/oledlg_Ko.rc, dlls/sane.ds/sane_Ko.rc,
	  dlls/serialui/Ko.rc, dlls/setupapi/Ko.rc, dlls/shdocvw/Ko.rc,
	  dlls/shell32/shell32_Ko.rc, dlls/shlwapi/shlwapi_Ko.rc,
	  dlls/user/resources/user32_Ko.rc, dlls/wineps.drv/wps_Ko.rc,
	  dlls/wininet/wininet_Ko.rc, dlls/winmm/winmm_Ko.rc,
	  dlls/winspool.drv/Ko.rc, dlls/wldap32/wldap32_Ko.rc,
	  programs/clock/Ko.rc, programs/cmd/Ko.rc, programs/cmdlgtst/Ko.rc,
	  programs/notepad/Ko.rc, programs/oleview/Ko.rc,
	  programs/progman/Ko.rc, programs/regedit/Ko.rc, programs/start/Ko.rc,
	  programs/taskmgr/Ko.rc, programs/uninstaller/Ko.rc,
	  programs/view/Ko.rc, programs/winecfg/Ko.rc,
	  programs/wineconsole/wineconsole_Ko.rc, programs/winefile/Ko.rc,
	  programs/winemine/Ko.rc, programs/winhelp/Ko.rc,
	  programs/wordpad/Ko.rc:
	Korean: Use SUBLANG_NEUTRAL in Korean resources.

2006-10-19  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/wineconsole/user.c:
	wineconsole: WM_RBUTTONDOWN lParam is in client coordinates not window
	coordinates.

	* programs/wineconsole/user.c:
	wineconsole: Make most keys cancel the selection.

	* programs/wineconsole/user.c:
	wineconsole: Allow making selections with a mouse also when not in the
	QuickEdit mode.

	* programs/wineconsole/user.c:
	wineconsole: Remove spaces from the ends of lines while copying to the clipboard.

	* programs/wineconsole/user.c:
	wineconsole: Change selection on WM_KEYDOWN not WM_KEYUP.

	* programs/wineconsole/wineconsole.c,
	  programs/wineconsole/wineconsole_En.rc,
	  programs/wineconsole/wineconsole_Pl.rc,
	  programs/wineconsole/wineconsole_res.h:
	wineconsole: Add usage message and more specific error messages.

2006-10-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/winmm/wineaudioio/Makefile.in, dlls/winmm/wineaudioio/audio.c:
	wineaudioio.drv: Win64 printf format fixes.

	* dlls/winmm/winecoreaudio/Makefile.in, dlls/winmm/winecoreaudio/audio.c,
	  dlls/winmm/winecoreaudio/coreaudio.c:
	winecoreaudio.drv: Win64 printf format fixes.

	* Makefile.in, configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/gdi/Makefile.in, dlls/gdi/bidi.c, dlls/gdi/bidi16.c,
	  dlls/gdi/bitblt.c, dlls/gdi/bitmap.c, dlls/gdi/brush.c,
	  dlls/gdi/clipping.c, dlls/gdi/dc.c, dlls/gdi/dib.c,
	  dlls/gdi/dispdib.c, dlls/gdi/dispdib.spec, dlls/gdi/driver.c,
	  dlls/gdi/enhmetafile.c, dlls/gdi/enhmfdrv/bitblt.c,
	  dlls/gdi/enhmfdrv/dc.c, dlls/gdi/enhmfdrv/enhmetafiledrv.h,
	  dlls/gdi/enhmfdrv/graphics.c, dlls/gdi/enhmfdrv/init.c,
	  dlls/gdi/enhmfdrv/mapping.c, dlls/gdi/enhmfdrv/objects.c,
	  dlls/gdi/env.c, dlls/gdi/font.c, dlls/gdi/freetype.c,
	  dlls/gdi/gdi.exe.spec, dlls/gdi/gdi16.c, dlls/gdi/gdi32.spec,
	  dlls/gdi/gdi_main.c, dlls/gdi/gdi_private.h, dlls/gdi/gdiobj.c,
	  dlls/gdi/icm.c, dlls/gdi/mapping.c, dlls/gdi/metafile.c,
	  dlls/gdi/metafile16.c, dlls/gdi/mfdrv/bitblt.c, dlls/gdi/mfdrv/dc.c,
	  dlls/gdi/mfdrv/graphics.c, dlls/gdi/mfdrv/init.c,
	  dlls/gdi/mfdrv/mapping.c, dlls/gdi/mfdrv/metafiledrv.h,
	  dlls/gdi/mfdrv/objects.c, dlls/gdi/mfdrv/text.c, dlls/gdi/opengl.c,
	  dlls/gdi/painting.c, dlls/gdi/palette.c, dlls/gdi/path.c,
	  dlls/gdi/pen.c, dlls/gdi/printdrv.c, dlls/gdi/region.c,
	  dlls/gdi/tests/Makefile.in, dlls/gdi/tests/bitmap.c,
	  dlls/gdi/tests/brush.c, dlls/gdi/tests/clipping.c,
	  dlls/gdi/tests/dc.c, dlls/gdi/tests/font.c, dlls/gdi/tests/gdiobj.c,
	  dlls/gdi/tests/generated.c, dlls/gdi/tests/mapping.c,
	  dlls/gdi/tests/metafile.c, dlls/gdi/tests/palette.c,
	  dlls/gdi/tests/pen.c, dlls/gdi/version.rc, dlls/gdi/version16.rc,
	  dlls/gdi/wing.c, dlls/gdi/wing.spec, dlls/gdi32/Makefile.in,
	  dlls/gdi32/bidi.c, dlls/gdi32/bidi16.c, dlls/gdi32/bitblt.c,
	  dlls/gdi32/bitmap.c, dlls/gdi32/brush.c, dlls/gdi32/clipping.c,
	  dlls/gdi32/dc.c, dlls/gdi32/dib.c, dlls/gdi32/dispdib.c,
	  dlls/gdi32/dispdib.spec, dlls/gdi32/driver.c,
	  dlls/gdi32/enhmetafile.c, dlls/gdi32/enhmfdrv/bitblt.c,
	  dlls/gdi32/enhmfdrv/dc.c, dlls/gdi32/enhmfdrv/enhmetafiledrv.h,
	  dlls/gdi32/enhmfdrv/graphics.c, dlls/gdi32/enhmfdrv/init.c,
	  dlls/gdi32/enhmfdrv/mapping.c, dlls/gdi32/enhmfdrv/objects.c,
	  dlls/gdi32/env.c, dlls/gdi32/font.c, dlls/gdi32/freetype.c,
	  dlls/gdi32/gdi.exe.spec, dlls/gdi32/gdi16.c, dlls/gdi32/gdi32.spec,
	  dlls/gdi32/gdi_main.c, dlls/gdi32/gdi_private.h, dlls/gdi32/gdiobj.c,
	  dlls/gdi32/icm.c, dlls/gdi32/mapping.c, dlls/gdi32/metafile.c,
	  dlls/gdi32/metafile16.c, dlls/gdi32/mfdrv/bitblt.c,
	  dlls/gdi32/mfdrv/dc.c, dlls/gdi32/mfdrv/graphics.c,
	  dlls/gdi32/mfdrv/init.c, dlls/gdi32/mfdrv/mapping.c,
	  dlls/gdi32/mfdrv/metafiledrv.h, dlls/gdi32/mfdrv/objects.c,
	  dlls/gdi32/mfdrv/text.c, dlls/gdi32/opengl.c, dlls/gdi32/painting.c,
	  dlls/gdi32/palette.c, dlls/gdi32/path.c, dlls/gdi32/pen.c,
	  dlls/gdi32/printdrv.c, dlls/gdi32/region.c,
	  dlls/gdi32/tests/Makefile.in, dlls/gdi32/tests/bitmap.c,
	  dlls/gdi32/tests/brush.c, dlls/gdi32/tests/clipping.c,
	  dlls/gdi32/tests/dc.c, dlls/gdi32/tests/font.c,
	  dlls/gdi32/tests/gdiobj.c, dlls/gdi32/tests/generated.c,
	  dlls/gdi32/tests/mapping.c, dlls/gdi32/tests/metafile.c,
	  dlls/gdi32/tests/palette.c, dlls/gdi32/tests/pen.c,
	  dlls/gdi32/version.rc, dlls/gdi32/version16.rc, dlls/gdi32/wing.c,
	  dlls/gdi32/wing.spec, programs/winetest/Makefile.in,
	  tools/make_makefiles, tools/winapi/msvcmaker, tools/winapi/tests.dat:
	gdi32: Renamed the gdi directory to gdi32.

	* dlls/dmstyle/style.c, dlls/imm32/imm.c, dlls/kernel32/computername.c,
	  dlls/ole32/stg_prop.c, dlls/winspool.drv/info.c:
	Avoid usage of sizeof in traces that causes warnings on MacOSX.

2006-10-19  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/hmac_md5.h:
	secur32: Add include guard to hmac_md5.h.

2006-10-20  Christoph Frick <frick@sc-networks.de>

	* dlls/gdi/gdi32.spec:
	gdi32: Add wglShareList to gdi32.spec.

2006-10-19  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/db.c:
	msi: Add tests for integer column types.

	* dlls/msi/database.c, dlls/msi/tests/db.c, dlls/msi/tests/install.c:
	msi: Integer columns can have the 'NOT NULL' modifier too.

	* dlls/msi/database.c, dlls/msi/tests/db.c:
	msi: Allow more than one primary key in a table when importing a database.

2006-10-18  James Hawkins <truiken@gmail.com>

	* tools/wine.inf:
	tools/wine.inf: Add the ProgramFilesPath registry entry.

2006-10-19  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/tests/install.c, dlls/msi/tests/package.c:
	msi: Only initialize a component's state if it is linked with a feature.

	* dlls/msi/tests/install.c:
	msi: Use the ProgramFileDir reg value instead of ProgramFilesPath.

	* dlls/msi/action.c, dlls/msi/tests/install.c:
	msi: Implement the InstallServices action.

2006-10-19  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/localmon.c, dlls/localspl/localspl_main.c:
	localspl: Implement InitializePrintMonitor.

2006-10-20  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Get function pointers from the monitor.

2006-10-19  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Another test for InitializePrintMonitor.

2006-10-19  Huw Davies <huw@codeweavers.com>

	* dlls/oledlg/pastespl.c:
	oledlg: Remove the structure window property when we quit.

	* dlls/oledlg/pastespl.c:
	oledlg: Return the appropiate value after the dialog is closed.

	* dlls/oledlg/pastespl.c:
	oledlg: Update the source text.

	* dlls/oledlg/pastespl.c:
	oledlg: Set nSelectedIndex on exit.

	* dlls/oledlg/pastespl.c:
	oledlg: Retrieve names from the OBJECTDESCRIPTOR structure.

	* dlls/oledlg/pastespl.c:
	oledlg: Call the hook proc if present.

	* dlls/oledlg/pastespl.c:
	oledlg: Set initial focus to the display list.

	* dlls/oledlg/pastespl.c:
	oledlg: Handle paste / link mode change.

	* dlls/oledlg/pastespl.c:
	oledlg: Minimal 'As Icon' handling. Just disable for now.

	* dlls/oledlg/pastespl.c:
	oledlg: Update the result text.

	* dlls/oledlg/oledlg_En.rc, dlls/oledlg/resource.h:
	oledlg: Add paste special string resources.

2006-10-18  Huw Davies <huw@codeweavers.com>

	* dlls/oledlg/pastespl.c:
	oledlg: Post OLEUI_MSG_HELP when the Help button is pressed and hide the Help
	button if the app doesn't want it.

	* dlls/oledlg/pastespl.c:
	oledlg: Send the OLEUI_MSG_ENDDIALOG messsage when closing the dialog.

	* dlls/oledlg/oledlg_main.c, dlls/oledlg/oledlg_private.h:
	oledlg: Register a couple of messages.

	* dlls/oledlg/pastespl.c:
	oledlg: Copy the appropiate list to the display list.

	* dlls/oledlg/pastespl.c:
	oledlg: Logic for initial selection of paste/pastelink radio buttons.

	* dlls/oledlg/pastespl.c:
	oledlg: Initialize the pastelink list.

	* dlls/oledlg/pastespl.c:
	oledlg: Initialize the paste list.

	* dlls/oledlg/pastespl.c:
	oledlg: Set the user supplied caption.

	* dlls/oledlg/pastespl.c:
	oledlg: Use the clipboard if the user doesn't pass an IDataObject.

	* dlls/oledlg/pastespl.c:
	oledlg: Initial management of private structure for dialog box control.

	* dlls/oledlg/oledlg_private.h, dlls/oledlg/pastespl.c:
	oledlg: Load the correct dialog template and add a skeleton dialog proc.

	* dlls/oledlg/oledlg_En.rc, dlls/oledlg/rsrc.rc:
	oledlg: Paste special dialog resource.

	* dlls/oledlg/pastespl.c:
	oledlg: Forward OleUIPasteSpecialA -> OleUIPasteSpecialW.

	* dlls/oledlg/pastespl.c:
	oledlg: Debugging code to dump the OLEUIPASTESPECIAL structure.

	* dlls/oledlg/oledlg_main.c, dlls/oledlg/oledlg_private.h:
	oledlg: Register a bunch of clipboard formats.

	* dlls/oledlg/Makefile.in, dlls/oledlg/oledlg_main.c,
	  dlls/oledlg/pastespl.c:
	oledlg: Move paste special dialog stubs to their own file.

	* include/oledlg.h:
	oledlg: Add the registered message name strings.

	* include/oledlg.h:
	oledlg: Add PS_MAXLINKTYPES.

	* include/oledlg.h:
	oledlg: Move the flag defines to under their respective structure definitions
	and remove some duplicates.

	* include/oledlg.h:
	oledlg: Add resource ids for the paste special dialog.

2006-10-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/graphics.c, dlls/winex11.drv/pen.c:
	winex11.drv: Avoid X error with unsupported pen styles.

2006-10-20  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/suminfo.c:
	msi: Fix an uninitialized variable causing random conformance test failures.

2006-10-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Bg.rc, dlls/mshtml/De.rc, dlls/mshtml/En.rc,
	  dlls/mshtml/Es.rc, dlls/mshtml/Fi.rc, dlls/mshtml/Fr.rc,
	  dlls/mshtml/Hu.rc, dlls/mshtml/Ko.rc, dlls/mshtml/Nl.rc,
	  dlls/mshtml/No.rc, dlls/mshtml/Sv.rc, dlls/mshtml/Tr.rc,
	  dlls/mshtml/resource.h:
	mshtml: Use mshtmcid.h defines where possible.

	* dlls/mshtml/htmlinput.c, dlls/mshtml/htmlselect.c:
	mshtml: Fix debug traces.

	* dlls/shdocvw/ie.c:
	shdocvw: Added WebBrowser::Navigate implementation.

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Use navigate_url in WebBrowser::Navigate.

	* dlls/shdocvw/ie.c, dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Move common Navigate2 code to navigate_url.

2006-10-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/comctl32undoc.c:
	comctl32: Cast-qual warnings fix.

	* dlls/cabinet/fdi.c:
	cabinet: Cast-qual warnings fix.

2006-10-19  Karsten Elfenbein <kelfe@gmx.de>

	* dlls/wined3d/swapchain.c:
	wined3d: Fix the FrontBuffer content capturing.

	* dlls/wined3d/swapchain.c:
	wined3d: Correct the software cursor position if the app is running in
	windowed mode.

	* dlls/wined3d/surface.c:
	wined3d: BltOverride: Make sure that the content of the source rect is
	copied to the correct position in the destination rect.

2006-10-18  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/install.c:
	msi: Add tests for the InstallServices action.

2006-10-18  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Fix the tests and handling of TB_SETHOTITEM on a disabled
	button.

2006-10-18  Oleg Krylov <oleg.krylov@gmail.com>

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Create tooltip on TB_GETTOOLTIPS message if not yet created.

2006-10-20  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/table.c:
	msi: Allow rows in the _Columns table to be unordered.

	* dlls/msi/table.c:
	msi: Reset the column number for each new table in a transform.

2006-10-19  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Update RelayExclude and add RelayFromExclude filter in order to
	avoid not useful APIs in the traces.

2006-10-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Hack to work around an Xlib bug when XInitThreads is used.

2006-10-18  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dbghelp/stabs.c:
	dbghelp: Cast-qual warnings fix.

2006-10-18  Jesse Allen <the3dfxdude@gmail.com>

	* include/winuser.h:
	include: Fix out of place comment for DLGC_* codes.

2006-10-18  Francois Gouget <fgouget@free.fr>

	* dlls/crypt32/cert.c, dlls/d3d9/tests/stateblock.c,
	  dlls/ole32/tests/hglobalstream.c, dlls/shell32/recyclebin.c:
	Fix compilation with gcc 2.95.

2006-10-18  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/devenum/devenum.rc, dlls/gphoto2.ds/gphoto2_Fr.rc,
	  dlls/iccvid/iccvid_Fr.rc, dlls/msvfw32/msvfw32_Fr.rc,
	  dlls/msvidc32/msvidc32_Fr.rc, dlls/sane.ds/sane_Fr.rc,
	  dlls/shlwapi/shlwapi_Fr.rc, dlls/wldap32/wldap32_Fr.rc:
	Use SUBLANG_NEUTRAL in French resources.

	* programs/taskmgr/Fr.rc:
	taskmgr: Fix an error in French translation.

2006-10-18  James Hawkins <truiken@gmail.com>

	* dlls/msi/package.c, dlls/msi/tests/package.c:
	msi: Set the USERNAME and COMPANYNAME properties when initializing a package.

	* dlls/msi/dialog.c:
	msi: Run SetProperty events before all other events no matter what the order is.

2006-10-16  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h,
	  programs/winhelp/winhelp.c, programs/winhelp/winhelp.h:
	winhelp: Improved metafile support.

2006-10-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/advapi32/registry.c:
	advapi32: Cast-qual warning fix.

2006-10-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/atl/registrar.c:
	atl: Cast-qual warnings fix.

2006-10-17  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/msvcrt/file.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Add stub for _getmaxstdio.

2006-10-16  Pierre d'Herbemont <pdherbemont@free.fr>

	* dlls/winex11.drv/x11drv.h:
	x11drv: Fix a typo in x11drv.h about X11DRV_GetTextExtentExPoint.

2006-10-16  Hans Leidekker <hans@it.vu.nl>

	* dlls/ntdll/Makefile.in, dlls/ntdll/atom.c, dlls/ntdll/cdrom.c,
	  dlls/ntdll/critsection.c, dlls/ntdll/debugbuffer.c,
	  dlls/ntdll/debugtools.c, dlls/ntdll/directory.c, dlls/ntdll/error.c,
	  dlls/ntdll/exception.c, dlls/ntdll/file.c, dlls/ntdll/handletable.c,
	  dlls/ntdll/heap.c, dlls/ntdll/loader.c, dlls/ntdll/misc.c,
	  dlls/ntdll/nt.c, dlls/ntdll/om.c, dlls/ntdll/path.c,
	  dlls/ntdll/process.c, dlls/ntdll/reg.c, dlls/ntdll/relay.c,
	  dlls/ntdll/resource.c, dlls/ntdll/rtl.c, dlls/ntdll/rtlbitmap.c,
	  dlls/ntdll/sec.c, dlls/ntdll/serial.c, dlls/ntdll/server.c,
	  dlls/ntdll/signal_i386.c, dlls/ntdll/sync.c, dlls/ntdll/tape.c,
	  dlls/ntdll/threadpool.c, dlls/ntdll/version.c, dlls/ntdll/virtual.c:
	ntdll: Win64 printf format warning fixes.

2006-10-17  Peter Oberndorfer <kumbayo84@arcor.de>

	* programs/winedbg/stack.c:
	winedbg: Print frame address instead of duplicated bare address in backtrace.

2006-10-17  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/gdi/gdi32.spec:
	gdi32: Add missing spec file entry for wglDeleteContext.

2006-10-17  Cihan Altinay <bobbyg@gmx.net>

	* dlls/shdocvw/dochost.c:
	shdocvw: Make sure BSTR is allocated before calling sink.

2006-10-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/msi/tests/db.c:
	msi/tests: Make sure to delete the test data file.

2006-10-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/mdi.c, dlls/user/tests/msg.c, dlls/winex11.drv/winpos.c:
	user: Add a test for ShowWindow(SW_MAXIMIZE) called on an invisible maximized
	MDI child, make it mostly pass under Wine.

2006-10-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user/dde_client.c:
	user: Dead code fix (Coverity).

2006-10-17  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Fix dead code in ScriptItemize.

2006-10-15  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/tests/joystick.c:
	dinput: Add SetCooperativeLevel test for joystick.

	* dlls/dinput/tests/keyboard.c:
	dinput: Add SetCooperativeLevel tests to keyboard.

	* dlls/dinput/device.c, dlls/dinput/device_private.h, dlls/dinput/mouse.c:
	dinput: Move SetCooperativeLevel into base class.

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Move SetEventNotification and associated event into base class.

	* dlls/dinput/device_private.h, dlls/dinput/joystick_linux.c,
	  dlls/dinput/joystick_linuxinput.c, dlls/dinput/keyboard.c,
	  dlls/dinput/mouse.c:
	dinput: Use dinput device as a base class for keyboard,  mouse and joystick.

2006-10-17  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Use SM_CYEDGE for heights in NCCalcSize.

2006-10-17  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Fix tables with binary data where the key is an integer.

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Stream fields shouldn't be treated as strings.

	* dlls/msi/action.c:
	msi: Fix a memory leak.

	* dlls/msi/tests/db.c:
	msi: Add a test for modifying a table containing binary data.

	* dlls/msi/tests/suminfo.c:
	msi: Add a test for summary information.

2006-10-16  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c, dlls/msi/msipriv.h, dlls/msi/msiquery.c:
	msi: Revert "msi: Perform button control events in greatest to least order."

2006-10-17  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/tests/Makefile.in, dlls/d3d8/tests/surface.c:
	d3d8: Backport d3d9 surface tests.

	* dlls/d3d8/device.c:
	d3d8: Fix wrong function name in FIXME.

2006-10-16  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/gdi/driver.c, dlls/gdi/gdi_private.h, dlls/gdi/opengl.c,
	  dlls/opengl32/opengl32.spec, dlls/opengl32/wgl.c:
	wgl: Move wglDeleteContext to gdi32.

2006-10-16  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/directory.c:
	ntdll: Plug a memory leak.

2006-10-16  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, include/msvcrt/direct.h,
	  include/msvcrt/malloc.h, include/msvcrt/mbstring.h,
	  include/msvcrt/search.h, include/msvcrt/stddef.h,
	  include/msvcrt/stdio.h, include/msvcrt/string.h,
	  include/msvcrt/sys/types.h, include/msvcrt/time.h,
	  include/msvcrt/wchar.h:
	configure: Don't define _WIN64 on the command line to avoid trouble with
	system headers.

2006-10-16  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Don't return rectangles with negative width or height in
	NCCalcSize.

	* dlls/user/input.c:
	user32: Send a WM_MOUSELEAVE even if another window calls TrackMouseEvent
	before the timer proc is called.

2006-10-16  Robert Shearman <rob@codeweavers.com>

	* dlls/kernel32/locale.c:
	kernel32: Add support for detecting the user locale preference from the system
	on Mac OS X.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_server.h:
	rpcrt4: Add a critical section to protect the connection list in each
	protseq to avoid taking the process-wide server_cs in the hot path for
	each protocol.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_server.h:
	rpcrt4: Convert the protseq list into a standard Wine list.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_server.h:
	rpcrt4: Abstract out the way incoming connections are waited for so that we
	no longer need to wait on Win32 handles.

	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Rename protseq_ops to connection_ops to reflect the fact that
	the functions operate on an RpcConnection object, not an
	RpcServerProtseq object.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_server.h:
	rpcrt4: Create a server thread for each protseq.

2006-10-16  Alexandre Julliard <julliard@winehq.org>

	* Make.rules.in, configure, configure.ac, dlls/atl/Makefile.in,
	  dlls/mshtml/Makefile.in, dlls/ole32/Makefile.in, include/Makefile.in:
	Make.rules: Added support for building IDL client/proxy/server/iid files.

	* tools/makedep.c:
	makedep: Added support for generating dependencies of IDL client/proxy/server/iid
	files.

2006-10-16  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/listview.c:
	comctl32: listview: Update the scroll bars after resizing the last column.

2006-10-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/setupapi/install.c:
	setupapi: Fix a typo.

2006-10-16  Hans Leidekker <hans@it.vu.nl>

	* programs/winhelp/winhelp.c:
	winhelp: Cast-qual warnings fix.

2006-10-16  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/device.c:
	ddraw: Implement GetRenderState for D3DRENDERSTATE_TEXTURE[MIN/MAG].

	* dlls/ddraw/device.c:
	ddraw: Implement GetRenderState for D3DRENDERSTATE_TEXTUREADDRESS[U/V].

2006-10-16  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/dispatcher.c:
	secur32: Stop leaking the session key memory.

2006-10-15  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/olepro32/Makefile.in, dlls/olepro32/version.rc:
	olepro32: Add version resource.

2006-10-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/uuid/uuid.c:
	libuuid: Fixed typo in CLSID_SynchronizeContainer.

	* include/wine/server_protocol.h, server/protocol.def, server/queue.c,
	  server/trace.c:
	server: A window timer id should be an unsigned long.

2006-10-14  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/user/input.c:
	user32: When calling TrackMouseEvent with TME_LEAVE the dwHoverTime may be
	uninitialized.

	* dlls/user/input.c:
	user32: Don't create timers with nEventId == 0 in TrackMouseEvent.

2006-10-15  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/device.c:
	ddraw: Implement GetRenderState for D3DRENDERSTATE_TEXTUREHANDLE.

2006-10-14  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/device.c:
	ddraw: Use real handles for state blocks.

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/ddraw/main.c,
	  dlls/ddraw/surface.c:
	ddraw: Make the surface list a standard wine list.

2006-10-14  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/gdi/driver.c, dlls/gdi/gdi_private.h, dlls/gdi/opengl.c,
	  dlls/opengl32/opengl32.spec, dlls/opengl32/wgl.c:
	wgl: Move wglShareLists to gdi32.

	* dlls/gdi/gdi32.spec, dlls/gdi/opengl.c, dlls/opengl32/opengl32.spec,
	  dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/winex11.drv.spec:
	wgl: Move wglGetCurrentDC to gdi32.

	* dlls/gdi/gdi32.spec, dlls/gdi/opengl.c, dlls/opengl32/opengl32.spec,
	  dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/winex11.drv.spec:
	wgl: Move wglGetCurrentContext to gdi32.

2006-10-15  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/tests/registry.c, dlls/cabinet/cabinet_main.c,
	  dlls/kernel32/heap.c, dlls/mscms/mscms_priv.h,
	  dlls/msg711.acm/msg711.c, dlls/ole32/compobj.c,
	  dlls/ole32/errorinfo.c, dlls/ole32/marshal.c, dlls/ole32/ole2.c,
	  dlls/ole32/tests/storage32.c, dlls/oleaut32/dispatch.c,
	  dlls/oleaut32/oleaut.c, dlls/oleaut32/typelib.c,
	  dlls/oleaut32/ungif.c, dlls/oleaut32/variant.c,
	  dlls/shell32/shlview.c, dlls/wined3d/basetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h,
	  dlls/winmm/message16.c, tools/wmc/mcy.y, tools/wrc/genres.c:
	Assorted spelling fixes.

2006-10-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/urlmon/binding.c, dlls/urlmon/urlmon_main.c,
	  dlls/urlmon/urlmon_main.h:
	urlmon: Create a message window for each binding to make sure they are cleaned
	up properly.

2006-10-15  Francois Gouget <fgouget@free.fr>

	* dlls/msi/table.c:
	msi: Remove spaces before '\n's.

	* programs/oleview/main.h:
	oleview: U(x) must be defined after winnt.h has had a chance to define
	NONAMELESSUNION. Fixes the compilation with gcc 2.95.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Remove '\0's in traces.

2006-10-14  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/winetest/main.c:
	winetest: Don't start test programs with STARTUPINFO.wShowWindow = SW_HIDE.

	* dlls/comctl32/header.c, dlls/comctl32/tests/header.c:
	comctl32: header: Test and improve the custom draw and owner draw code.

	* dlls/comctl32/header.c:
	comctl32: header: Make all repaints pass through HEADER_Refresh.

	* dlls/comctl32/rebar.c:
	comctl32: rebar: bUnicode and NtfUnicode should be the same.

2006-10-15  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/secur32_priv.h:
	secur32: Get rid of NEGO_* helper modes, they will never be used. Negotiate
	should not be done via ntlm_auth.

2006-10-14  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/Makefile.in, dlls/secur32/hmac_md5.c,
	  dlls/secur32/hmac_md5.h:
	secur32: Implement RFC2104 (HMAC) with MD5 for NTLMv2.

2006-10-13  James Hawkins <truiken@gmail.com>

	* dlls/mscoree/mscoree.spec, dlls/mscoree/mscoree_main.c:
	mscoree: Add stub implementations of CorBindToRuntimeHost and GetCORVersion.

	* dlls/mscoree/mscoree.spec:
	mscoree: Add missing stubs to the spec file.

2006-10-13  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/device.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	d3d8: Implement CopyRects with BltFast.

2006-10-15  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added IDocHostUIHandler2 test.

	* dlls/mshtml/nsio.c:
	mshtml: Load page from moniker if AsyncOpen fails.

	* dlls/mshtml/task.c:
	mshtml: Don't crash in remove_doc_tasks if thread_data is not allocated.

2006-10-15  Hans Leidekker <hans@it.vu.nl>

	* dlls/secur32/Makefile.in, dlls/secur32/negotiate.c, dlls/secur32/ntlm.c,
	  dlls/secur32/schannel.c, dlls/secur32/secur32.c,
	  dlls/secur32/thunks.c, dlls/secur32/thunks.h, dlls/secur32/wrapper.c,
	  include/sspi.h:
	secur32: Win64 printf format warning fixes.

2006-10-15  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/ole32/Makefile.in, dlls/ole32/antimoniker.c, dlls/ole32/bindctx.c,
	  dlls/ole32/classmoniker.c, dlls/ole32/clipboard.c,
	  dlls/ole32/compobj.c, dlls/ole32/compositemoniker.c,
	  dlls/ole32/datacache.c, dlls/ole32/dcom.idl,
	  dlls/ole32/defaulthandler.c, dlls/ole32/enumx.c,
	  dlls/ole32/errorinfo.c, dlls/ole32/filemoniker.c,
	  dlls/ole32/ftmarshal.c, dlls/ole32/git.c, dlls/ole32/hglobalstream.c,
	  dlls/ole32/ifs.c, dlls/ole32/itemmoniker.c, dlls/ole32/marshal.c,
	  dlls/ole32/memlockbytes.c, dlls/ole32/memlockbytes16.c,
	  dlls/ole32/moniker.c, dlls/ole32/ole16.c, dlls/ole32/ole2.c,
	  dlls/ole32/ole2_16.c, dlls/ole32/ole2stubs.c, dlls/ole32/oleobj.c,
	  dlls/ole32/oleproxy.c, dlls/ole32/rpc.c,
	  dlls/ole32/stg_bigblockfile.c, dlls/ole32/stg_prop.c,
	  dlls/ole32/stg_stream.c, dlls/ole32/storage.c,
	  dlls/ole32/storage32.c, dlls/ole32/stubmanager.c:
	ole32: Win64 printf format warning fixes.

	* dlls/crypt32/sip.c, dlls/crypt32/tests/sip.c,
	  dlls/dsound/tests/propset.c, dlls/infosoft/infosoft_main.c,
	  dlls/mshtml/main.c, dlls/ole32/tests/marshal.c,
	  dlls/oleaut32/tmarshal.c, dlls/oleaut32/typelib.c,
	  dlls/oleaut32/typelib16.c, dlls/shell32/classes.c,
	  dlls/shell32/debughlp.c, dlls/shell32/shfldr.h,
	  dlls/shlwapi/ordinal.c, dlls/urlmon/regsvr.c, include/guiddef.h,
	  include/wine/debug.h, tools/widl/header.c, tools/winedump/lnk.c:
	The Data1 member of the GUID struct needs to be an unsigned int too for Win64
	compatibility.

	* dlls/rpcrt4/rpc_message.c, dlls/winedos/module.c:
	janitorial: Remove redundant NULL checks before calling HeapFree wrappers.

2006-10-14  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Test and improve TB_SETHOTITEM.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Use nHotItem not nOldHit for the hot item in MouseLeave.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Don't try to redraw buttons outside of the clipping rect.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Change the dwData from DWORD to DWORD_PTR.

2006-10-14  Jeff Latimer <lats@yless4u.com.au>

	* dlls/ole32/errorinfo.c:
	ole32: Remove dead code in errorinfo.c (Coverity).

2006-10-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c:
	ntdll: More workarounds for more kernel bugs in VFAT ioctl mapping on x86-64.

2006-10-13  Peter Oberndorfer <kumbayo84@arcor.de>

	* configure, configure.ac:
	configure: Detect mingw cross compiler in gentoo.

2006-10-13  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/tests/install.c:
	msi: Also set the SOURCEDIR property in MSI_InstallPackage.

	* dlls/cfgmgr32/main.c, dlls/setupapi/devinst.c, include/Makefile.in,
	  include/cfgmgr32.h, include/ddk/cfgmgr32.h:
	include: Move cfgmgr32.h to include/ to match the SDK.

	* dlls/clusapi/clusapi.c, include/Makefile.in, include/clusapi.h:
	clusapi: Add the clusapi.h public header.

2006-10-14  Mike McCormack <mike@codeweavers.com>

	* programs/winetest/send.c:
	winetest: Avoid calling fclose twice on the same file (Coverity).

2006-10-13  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/ntdll/tests/Makefile.in, dlls/ntdll/tests/atom.c,
	  dlls/ntdll/tests/env.c, dlls/ntdll/tests/error.c,
	  dlls/ntdll/tests/exception.c, dlls/ntdll/tests/info.c,
	  dlls/ntdll/tests/large_int.c, dlls/ntdll/tests/om.c,
	  dlls/ntdll/tests/path.c, dlls/ntdll/tests/port.c,
	  dlls/ntdll/tests/reg.c, dlls/ntdll/tests/rtl.c,
	  dlls/ntdll/tests/rtlbitmap.c, dlls/ntdll/tests/rtlstr.c,
	  dlls/ntdll/tests/string.c:
	ntdll/tests: Win64 printf format warning fixes.

	* dlls/imm32/Makefile.in, dlls/imm32/imm.c:
	imm32: Win64 printf format warning fixes.

	* dlls/setupapi/Makefile.in, dlls/setupapi/devinst.c,
	  dlls/setupapi/devinst16.c, dlls/setupapi/dirid.c,
	  dlls/setupapi/install.c, dlls/setupapi/misc.c,
	  dlls/setupapi/parser.c, dlls/setupapi/query.c, dlls/setupapi/queue.c,
	  dlls/setupapi/setupcab.c, dlls/setupapi/setupx_main.c,
	  dlls/setupapi/stringtable.c, dlls/setupapi/stubs.c,
	  dlls/setupapi/virtcopy.c:
	setupapi: Win64 printf format warning fixes.

2006-10-13  Michael Ploujnikov <ploujj@gmail.com>

	* dlls/ole32/tests/Makefile.in, dlls/ole32/tests/clipboard.c,
	  dlls/ole32/tests/compobj.c, dlls/ole32/tests/hglobalstream.c,
	  dlls/ole32/tests/marshal.c, dlls/ole32/tests/moniker.c,
	  dlls/ole32/tests/ole2.c, dlls/ole32/tests/propvariant.c,
	  dlls/ole32/tests/stg_prop.c, dlls/ole32/tests/storage32.c:
	ole32/tests: Win64 printf format warning fixes.

	* dlls/comctl32/Makefile.in, dlls/comctl32/animate.c,
	  dlls/comctl32/comboex.c, dlls/comctl32/comctl32undoc.c,
	  dlls/comctl32/commctrl.c, dlls/comctl32/datetime.c,
	  dlls/comctl32/dpa.c, dlls/comctl32/draglist.c,
	  dlls/comctl32/hotkey.c, dlls/comctl32/imagelist.c,
	  dlls/comctl32/listview.c, dlls/comctl32/monthcal.c,
	  dlls/comctl32/pager.c, dlls/comctl32/propsheet.c,
	  dlls/comctl32/rebar.c, dlls/comctl32/smoothscroll.c,
	  dlls/comctl32/status.c, dlls/comctl32/tab.c, dlls/comctl32/theming.c,
	  dlls/comctl32/toolbar.c, dlls/comctl32/tooltips.c,
	  dlls/comctl32/trackbar.c, dlls/comctl32/treeview.c:
	comctl32: Win64 printf format warning fixes.

2006-10-13  Hans Leidekker <hans@it.vu.nl>

	* dlls/riched20/Makefile.in, dlls/riched20/clipboard.c,
	  dlls/riched20/editor.c, dlls/riched20/paint.c,
	  dlls/riched20/richole.c, dlls/riched20/run.c, dlls/riched20/txtsrv.c,
	  dlls/riched20/writer.c:
	riched20: Win64 printf format warning fixes.

	* dlls/wininet/http.c:
	wininet: Cast-qual warnings fix.

2006-10-13  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/hlpfile.c:
	winhelp: Window style has not been initialized.

	* programs/winhelp/winhelp.c, programs/winhelp/winhelp.h:
	winhelp: Use color specified in .hlp file for background, not just WHITE_BRUSH.

2006-10-13  Alexandre Julliard <julliard@winehq.org>

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

----------------------------------------------------------------
2006-10-13  Michael Ploujnikov <ploujj@gmail.com>

	* dlls/comctl32/tests/Makefile.in, dlls/comctl32/tests/comboex.c,
	  dlls/comctl32/tests/dpa.c, dlls/comctl32/tests/header.c,
	  dlls/comctl32/tests/imagelist.c, dlls/comctl32/tests/listview.c,
	  dlls/comctl32/tests/mru.c, dlls/comctl32/tests/progress.c,
	  dlls/comctl32/tests/tab.c, dlls/comctl32/tests/tooltips.c:
	comctl32/tests: Win64 printf format warning fixes.

	* dlls/comdlg32/Makefile.in, dlls/comdlg32/cdlg32.c,
	  dlls/comdlg32/colordlg16.c, dlls/comdlg32/filedlg.c,
	  dlls/comdlg32/filedlg16.c, dlls/comdlg32/filedlg31.c,
	  dlls/comdlg32/filedlgbrowser.c, dlls/comdlg32/finddlg16.c,
	  dlls/comdlg32/finddlg32.c, dlls/comdlg32/fontdlg.c,
	  dlls/comdlg32/fontdlg16.c, dlls/comdlg32/printdlg.c,
	  dlls/comdlg32/printdlg16.c:
	comdlg32: Win64 printf format warning fixes.

2006-10-13  Hans Leidekker <hans@it.vu.nl>

	* dlls/winspool.drv/tests/Makefile.in, dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: Win64 printf format warning fixes.

	* dlls/msxml3/tests/Makefile.in, dlls/msxml3/tests/domdoc.c:
	msxml3/tests: Win64 printf format warning fixes.

	* dlls/winspool.drv/Makefile.in, dlls/winspool.drv/info.c:
	winspool.drv: Win64 printf format warning fixes.

2006-10-12  Hans Leidekker <hans@it.vu.nl>

	* dlls/oleaut32/Makefile.in, dlls/oleaut32/connpt.c,
	  dlls/oleaut32/dispatch.c, dlls/oleaut32/hash.c,
	  dlls/oleaut32/ole2disp.c, dlls/oleaut32/oleaut.c,
	  dlls/oleaut32/olefont.c, dlls/oleaut32/olepicture.c,
	  dlls/oleaut32/recinfo.c, dlls/oleaut32/safearray.c,
	  dlls/oleaut32/stubs.c, dlls/oleaut32/tmarshal.c,
	  dlls/oleaut32/typelib.c, dlls/oleaut32/typelib16.c,
	  dlls/oleaut32/typelib2.c, dlls/oleaut32/usrmarshal.c,
	  dlls/oleaut32/varformat.c, dlls/oleaut32/variant.c,
	  dlls/oleaut32/vartype.c:
	oleaut32: Win64 printf format warning fixes.

	* dlls/quartz/Makefile.in, dlls/quartz/acmwrapper.c, dlls/quartz/avidec.c,
	  dlls/quartz/avisplit.c, dlls/quartz/control.c,
	  dlls/quartz/dsoundrender.c, dlls/quartz/enumfilters.c,
	  dlls/quartz/enummedia.c, dlls/quartz/enummoniker.c,
	  dlls/quartz/enumpins.c, dlls/quartz/enumregfilters.c,
	  dlls/quartz/filesource.c, dlls/quartz/filtergraph.c,
	  dlls/quartz/filtermapper.c, dlls/quartz/main.c,
	  dlls/quartz/memallocator.c, dlls/quartz/parser.c, dlls/quartz/pin.c,
	  dlls/quartz/regsvr.c, dlls/quartz/systemclock.c,
	  dlls/quartz/transform.c, dlls/quartz/videorenderer.c,
	  dlls/quartz/waveparser.c:
	quartz: Win64 printf format warning fixes.

2006-10-13  Hans Leidekker <hans@it.vu.nl>

	* dlls/wineps.drv/Makefile.in, dlls/wineps.drv/bitblt.c,
	  dlls/wineps.drv/bitmap.c, dlls/wineps.drv/brush.c,
	  dlls/wineps.drv/builtin.c, dlls/wineps.drv/color.c,
	  dlls/wineps.drv/driver.c, dlls/wineps.drv/escape.c,
	  dlls/wineps.drv/font.c, dlls/wineps.drv/graphics.c,
	  dlls/wineps.drv/init.c, dlls/wineps.drv/pen.c, dlls/wineps.drv/ps.c,
	  dlls/wineps.drv/type1.c, dlls/wineps.drv/type42.c:
	wineps.drv: Win64 printf format warning fixes.

2006-10-12  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/kernel32/Makefile.in, dlls/kernel32/actctx.c,
	  dlls/kernel32/change.c, dlls/kernel32/comm.c,
	  dlls/kernel32/computername.c, dlls/kernel32/console.c,
	  dlls/kernel32/cpu.c, dlls/kernel32/dosmem.c,
	  dlls/kernel32/editline.c, dlls/kernel32/environ.c,
	  dlls/kernel32/except.c, dlls/kernel32/file.c, dlls/kernel32/file16.c,
	  dlls/kernel32/format_msg.c, dlls/kernel32/global16.c,
	  dlls/kernel32/heap.c, dlls/kernel32/instr.c,
	  dlls/kernel32/lcformat.c, dlls/kernel32/locale.c,
	  dlls/kernel32/lzexpand.c, dlls/kernel32/module.c,
	  dlls/kernel32/ne_module.c, dlls/kernel32/ne_segment.c,
	  dlls/kernel32/path.c, dlls/kernel32/powermgnt.c,
	  dlls/kernel32/process.c, dlls/kernel32/profile.c,
	  dlls/kernel32/relay16.c, dlls/kernel32/resource.c,
	  dlls/kernel32/resource16.c, dlls/kernel32/snoop16.c,
	  dlls/kernel32/stress.c, dlls/kernel32/sync.c,
	  dlls/kernel32/syslevel.c, dlls/kernel32/tape.c, dlls/kernel32/task.c,
	  dlls/kernel32/thread.c, dlls/kernel32/thunk.c, dlls/kernel32/time.c,
	  dlls/kernel32/toolhelp.c, dlls/kernel32/toolhelp16.c,
	  dlls/kernel32/utthunk.c, dlls/kernel32/version.c,
	  dlls/kernel32/volume.c, dlls/kernel32/vxd.c, dlls/kernel32/win87em.c,
	  dlls/kernel32/wowthunk.c:
	kernel32: Win64 printf format warning fixes.

	* dlls/gdi/tests/Makefile.in, dlls/gdi/tests/bitmap.c,
	  dlls/gdi/tests/brush.c, dlls/gdi/tests/clipping.c,
	  dlls/gdi/tests/dc.c, dlls/gdi/tests/font.c, dlls/gdi/tests/gdiobj.c,
	  dlls/gdi/tests/mapping.c, dlls/gdi/tests/metafile.c,
	  dlls/gdi/tests/palette.c, dlls/gdi/tests/pen.c:
	gdi/tests: Win64 printf format warning fixes.

2006-10-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvfw32/msvideo_main.c:
	msvfw32: Avoid a compiler warning.

2006-10-13  Francois Gouget <fgouget@free.fr>

	* dlls/dmband/bandtrack.c, dlls/dmcompos/chordmaptrack.c,
	  dlls/dmcompos/signposttrack.c, dlls/dmime/lyricstrack.c,
	  dlls/dmime/markertrack.c, dlls/dmime/paramcontroltrack.c,
	  dlls/dmime/segtriggertrack.c, dlls/dmime/seqtrack.c,
	  dlls/dmime/sysextrack.c, dlls/dmime/tempotrack.c,
	  dlls/dmime/timesigtrack.c, dlls/dmime/wavetrack.c,
	  dlls/dmscript/scripttrack.c, dlls/dmstyle/auditiontrack.c,
	  dlls/dmstyle/chordtrack.c, dlls/dmstyle/commandtrack.c,
	  dlls/dmstyle/motiftrack.c, dlls/dmstyle/mutetrack.c,
	  dlls/dmstyle/styletrack.c:
	Add '\n's to Wine traces.

	* dlls/d3d8/pixelshader.c, dlls/d3d8/vertexshader.c,
	  dlls/d3d9/pixelshader.c, dlls/d3d9/vertexshader.c,
	  dlls/imagehlp/integrity.c, dlls/msi/action.c, dlls/shlwapi/reg.c,
	  dlls/shlwapi/string.c, dlls/shlwapi/url.c, dlls/usp10/usp10.c,
	  dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/texture.c, dlls/winex11.drv/dib.c,
	  tools/widl/write_msft.c:
	Assorted spelling fixes.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_epmap.c,
	  dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_transport.c,
	  dlls/rpcrt4/rpcrt4_main.c, include/rpcdce.h:
	rpcrt4: Add RPC_CSTR, RPC_WSTR and update the prototypes accordingly.

	* dlls/secur32/ntlm.c:
	secur32: Add missing '\n' in a Wine trace.

	* dlls/olepro32/olepro32stubs.c:
	olepro32: Mark stubs as such.

2006-10-13  Markus Amsler <markus.amsler@oribi.org>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Fix fread eof handling.

	* dlls/msvcrt/file.c:
	msvcrt: fread: Fill buffer on small reads.

	* dlls/msvcrt/tests/file.c:
	msvcrt: Add fread eof tests.

2006-10-12  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/directx.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private_types.h:
	wined3d: Add shader version/end masks to the WINED3D namespace.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/texture.c,
	  dlls/wined3d/utils.c, include/wine/wined3d_types.h:
	wined3d: Add D3DTEXTURETRANSFORMTYPE to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_types.h:
	wined3d: Add D3DCLIPPLANE constants to the WINED3D namespace.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private_types.h:
	wined3d: Add D3DSHADER_ADDRMODE masks to the WINED3D namespace.

	* dlls/wined3d/baseshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h, dlls/wined3d/wined3d_private_types.h:
	wined3d: Add D3DSI and other opcode masks to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_types.h:
	wined3d: Add D3DVERTEXBLENDFLAGS to the WINED3D namespace.

	* dlls/ddraw/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DTEXTUREOP to the WINED3D namespace.

2006-10-12  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw.c:
	ddraw: Do not let the a surface dimension fall to 0.

	* dlls/ddraw/ddraw.c:
	ddraw: Remove an incorrect size check.

2006-10-12  Michael Ploujnikov <ploujj@gmail.com>

	* dlls/mciseq/Makefile.in, dlls/mciseq/mcimidi.c:
	mciseq: Win64 printf format warning fixes.

2006-10-12  Detlef Riekenberg <wine.dev@web.de>

	* dlls/shell32/shell32_De.rc:
	shell32: Fix typo in Run dialog.

2006-10-12  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/gdi/Makefile.in, dlls/gdi/bidi.c, dlls/gdi/bitblt.c,
	  dlls/gdi/bitmap.c, dlls/gdi/brush.c, dlls/gdi/clipping.c,
	  dlls/gdi/dc.c, dlls/gdi/dib.c, dlls/gdi/driver.c,
	  dlls/gdi/enhmetafile.c, dlls/gdi/enhmfdrv/graphics.c,
	  dlls/gdi/enhmfdrv/init.c, dlls/gdi/font.c, dlls/gdi/freetype.c,
	  dlls/gdi/gdi16.c, dlls/gdi/gdiobj.c, dlls/gdi/metafile.c,
	  dlls/gdi/mfdrv/bitblt.c, dlls/gdi/mfdrv/init.c, dlls/gdi/opengl.c,
	  dlls/gdi/painting.c, dlls/gdi/palette.c, dlls/gdi/path.c,
	  dlls/gdi/pen.c, dlls/gdi/printdrv.c, dlls/gdi/region.c,
	  dlls/gdi/wing.c:
	gdi: Win64 printf format warning fixes.

	* dlls/dmstyle/Makefile.in, dlls/dmstyle/auditiontrack.c,
	  dlls/dmstyle/chordtrack.c, dlls/dmstyle/commandtrack.c,
	  dlls/dmstyle/dmutils.c, dlls/dmstyle/motiftrack.c,
	  dlls/dmstyle/mutetrack.c, dlls/dmstyle/style.c,
	  dlls/dmstyle/styletrack.c:
	dmstyle: Win64 printf format warning fixes.

	* dlls/msacm32/Makefile.in, dlls/msacm32/driver.c, dlls/msacm32/filter.c,
	  dlls/msacm32/format.c, dlls/msacm32/internal.c,
	  dlls/msacm32/msacm32_main.c, dlls/msacm32/msacm_main.c,
	  dlls/msacm32/pcmconverter.c, dlls/msacm32/stream.c:
	msacm32: Win64 printf format warning fixes.

	* dlls/dmusic/Makefile.in, dlls/dmusic/buffer.c, dlls/dmusic/clock.c,
	  dlls/dmusic/collection.c, dlls/dmusic/dmusic.c,
	  dlls/dmusic/dmusic_main.c, dlls/dmusic/download.c,
	  dlls/dmusic/downloadedinstrument.c, dlls/dmusic/instrument.c,
	  dlls/dmusic/port.c, dlls/dmusic/portdownload.c, dlls/dmusic/thru.c:
	dmusic: Win64 printf format warning fixes.

	* dlls/mciavi32/Makefile.in, dlls/mciavi32/info.c, dlls/mciavi32/mciavi.c,
	  dlls/mciavi32/mmoutput.c, dlls/mciavi32/wnd.c:
	mciavi32: Win64 printf format warning fixes.

	* dlls/msvfw32/Makefile.in, dlls/msvfw32/drawdib.c, dlls/msvfw32/mciwnd.c,
	  dlls/msvfw32/msvideo16.c, dlls/msvfw32/msvideo_main.c:
	msvfw32: Win64 printf format warning fixes.

	* dlls/dmband/Makefile.in, dlls/dmband/band.c, dlls/dmband/bandtrack.c,
	  dlls/dmband/dmutils.c:
	dmband: Win64 printf format warning fixes.

	* dlls/dmloader/Makefile.in, dlls/dmloader/classfactory.c,
	  dlls/dmloader/container.c, dlls/dmloader/debug.c,
	  dlls/dmloader/loader.c, dlls/dmloader/loaderstream.c:
	dmloader: Win64 printf format warning fixes.

	* dlls/mciwave/Makefile.in, dlls/mciwave/mciwave.c:
	mciwave: Win64 printf format warning fixes.

	* dlls/mpr/Makefile.in, dlls/mpr/multinet.c, dlls/mpr/nps.c,
	  dlls/mpr/pwcache.c, dlls/mpr/wnet.c:
	mpr: Win64 printf format warning fixes.

2006-10-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/sane.ds/sane_i.h:
	sane.ds: Get rid of the prototypes of some removed functions.

2006-10-12  Hans Leidekker <hans@it.vu.nl>

	* dlls/itss/Makefile.in, dlls/itss/chm_lib.c, dlls/itss/itss.c,
	  dlls/itss/storage.c:
	itss: Win64 printf format warning fixes.

	* dlls/mapi32/tests/Makefile.in, dlls/mapi32/tests/imalloc.c,
	  dlls/mapi32/tests/prop.c, dlls/mapi32/tests/util.c:
	mapi32/tests: Win64 printf format warning fixes.

	* dlls/tapi32/Makefile.in, dlls/tapi32/assisted.c, dlls/tapi32/line.c,
	  dlls/tapi32/phone.c:
	tapi32: Win64 printf format warning fixes.

	* dlls/netapi32/Makefile.in, dlls/netapi32/access.c,
	  dlls/netapi32/apibuf.c, dlls/netapi32/ds.c,
	  dlls/netapi32/local_group.c, dlls/netapi32/nbt.c,
	  dlls/netapi32/netapi32.c, dlls/netapi32/netbios.c,
	  dlls/netapi32/share.c, dlls/netapi32/wksta.c:
	netapi32: Win64 printf format warning fixes.

	* dlls/oleaut32/tests/Makefile.in, dlls/oleaut32/tests/olefont.c,
	  dlls/oleaut32/tests/olepicture.c, dlls/oleaut32/tests/safearray.c,
	  dlls/oleaut32/tests/typelib.c, dlls/oleaut32/tests/usrmarshal.c,
	  dlls/oleaut32/tests/varformat.c, dlls/oleaut32/tests/vartest.c,
	  dlls/oleaut32/tests/vartype.c:
	oleaut32/tests: Win64 printf format warning fixes.

2006-10-12  Detlef Riekenberg <wine.dev@web.de>

	* dlls/shell32/shell32.spec, dlls/shell32/shellreg.c:
	shell32: Implement SHRegQueryValueA with RegQueryValueA.

2006-10-11  Srivatsa Kanchi, R <skanchi@nexthop.com>

	* tools/wineprefixcreate.in:
	wineprefixcreate: Set correct LD_LIBRARY_PATH.

2006-10-07  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/gdi/opengl.c:
	opengl: Fix wglMakeCurrent bug.

2006-10-12  Hans Leidekker <hans@it.vu.nl>

	* dlls/mscms/tests/Makefile.in, dlls/mscms/tests/profile.c:
	mscms/tests: Win64 printf format warning fixes.

2006-10-05  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/regedit/edit.c:
	regedit: Cast-qual warnings fix.

2006-10-12  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Handle the sign properly when converting integer data.

	* dlls/msi/table.c:
	msi: Improve error checking when applying transform data.

2006-10-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/advapi32/service.c, dlls/crypt32/tests/encode.c,
	  dlls/dmime/tempotrack.c, dlls/shlwapi/tests/clist.c,
	  dlls/user/tests/class.c, tools/winedump/pe.c:
	Fixed some printf warnings caused by using sizeof.

	* loader/main.c:
	loader: Make sure the reserved area is protected on MacOSX too.

	* dlls/ws2_32/Makefile.in, dlls/ws2_32/async.c, dlls/ws2_32/socket.c,
	  include/winsock.h:
	ws2_32: Win64 printf format fixes.

	* dlls/ws2_32/socket.c, include/winsock.h, include/winsock2.h:
	winsock: Add a WS_ prefix to the BSD types.

2006-10-11  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Store dwBaseCustDraw and dwItemCDFlag in local variables.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Merge TOOLBAR_InsertButtonA and TOOLBAR_InsertButtonW.

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Passing a string pointer in TB_INSERTBUTTON shouldn't change
	the strings table (with test case).

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Remove dwItemCustDraw from TOOLBAR_INFO and store it as a
	local variable.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Don't send NM_CUSTOMDRAW for separators.

	* dlls/comctl32/header.c:
	comctl32: header: Call DefWindowProcW not DefWindowProcA.

	* dlls/comctl32/header.c:
	comctl32: header: Invalidate the control after a WM_SETREDRAW with wParam
	== TRUE.

	* dlls/comctl32/listview.c:
	comctl32: listview: Don't call ScrollColumn with an out of bounds index when
	resizing the last column.

2006-10-12  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/drawprim.c, include/wine/wined3d_types.h:
	wined3d: Merge D3DDP_MAXTEXCOORD constants into one constant in WINED3D
	namespace.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Merge D3DPRIMITIVETYPE types into one type in WINED3D namespace.

	* dlls/wined3d/device.c, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Merge D3DCOLOR types into one type in WINED3D namespace.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/ddraw/device.c,
	  dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Merge D3DRECT types into one type in WINED3D namespace.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/ddraw/device.c,
	  dlls/ddraw/executebuffer.c, dlls/wined3d/device.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Merge D3DMATRIX types into one type in WINED3D namespace.

	* dlls/ddraw/device.c, dlls/wined3d/device.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: D3DTRANSFORMSTATETYPE: Consistently use in the WINED3D namespace.

	* dlls/ddraw/device.c, dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: D3DRENDERSTATETYPE: Consistently use in the WINED3D namespace.

2006-10-11  Nickolay V. Shmyrev <nshmyrev@yandex.ru>

	* dlls/winex11.drv/window.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Always set window type.

2006-10-11  Michael Ploujnikov <ploujj@gmail.com>

	* dlls/lz32/tests/Makefile.in, dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Win64 printf format warning fixes.

	* dlls/dinput/tests/Makefile.in, dlls/dinput/tests/joystick.c,
	  dlls/dinput/tests/keyboard.c, dlls/dinput/tests/mouse.c:
	dinput/tests: Win64 printf format warning fixes.

	* dlls/advpack/tests/Makefile.in, dlls/advpack/tests/advpack.c,
	  dlls/advpack/tests/files.c, dlls/advpack/tests/install.c:
	advpack/tests: Win64 printf format warning fixes.

2006-10-12  José Manuel Ferrer Ortiz <jmfo1982@yahoo.es>

	* dlls/msi/msi_Es.rc:
	msi: Updated Spanish translation.

	* dlls/wldap32/wldap32.rc, dlls/wldap32/wldap32_Es.rc:
	wldap32: Added Spanish translation.

	* dlls/mshtml/Es.rc, dlls/mshtml/rsrc.rc:
	mshtml: Added Spanish translation.

2006-10-11  Christian Gmeiner <christian.gmeiner@students.fhv.at>

	* dlls/user/sysparams.c:
	user32: SPI_GETFONTSMOOTHINGORIENTATION and SPI_SETFONTSMOOTHINGORIENTATION
	are kown actions.

2006-10-11  James Hawkins <truiken@gmail.com>

	* dlls/cabinet/fdi.c:
	cabinet: Make internal functions static.

	* dlls/crypt32/chain.c:
	crypt32: Make an internal function static.

	* dlls/comctl32/listview.c, dlls/comctl32/propsheet.c:
	comctl32: Make internal functions static.

	* dlls/gphoto2.ds/gphoto2_main.c:
	gphoto2.ds: Make an internal function static.

	* include/winbase.h, include/winreg.h:
	advapi32: Add missing declarations to the public headers.

	* dlls/advapi32/crypt_sha.c, dlls/advapi32/registry.c:
	advapi32: Make internal functions static.

2006-10-11  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* include/winnt.h:
	winedump: Cast-qual warnings fix (with thanks to Dmitry Timoshkov and Eric
	Pouech).

	* tools/winebuild/import.c:
	winebuild: Cast-qual warning fix.

2006-10-11  Nicolas Delcros <nicolas@dyalog.com>

	* dlls/ws2_32/socket.c:
	winsock: Add mapping for SO_ACCEPTCONN.

2006-10-12  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Test transforms removing a row in a table.

2006-10-11  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Tests for transforms modifying rows in a table.

	* dlls/msi/table.c:
	msi: An empty string table entry should always have a zero refcount.

2006-10-10  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/ddraw/gamma.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Merge GAMMARAMP types into one type in WINED3D namespace.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/ddraw/device.c,
	  dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Merge VIEWPORT types into one type in WINED3D namespace.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/ddraw/device.c,
	  dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Merge MATERIAL types into one type in WINED3D namespace.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/ddraw/device.c,
	  dlls/wined3d/device.c, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Merge LIGHT types into one type in WINED3D namespace.

	* dlls/wined3d/wined3d_private.h:
	wined3d: TEXTUREFILTERTYPE: Consistently use in WINED3D namespace.

	* dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h:
	wined3d: D3DDECLTYPE: Consistently use in WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: D3DQUERYTYPE: Consistently use in WINED3D namespace.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/device.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/utils.c:
	wined3d: D3DTEXTURESTAGESTATETYPE: Consistently use in WINED3D namespace.

	* dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: D3DDEVTYPE: Consistently use in WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: D3DFORMAT: Consistently use WINED3D namespace.

2006-10-10  Ge van Geldorp <ge@gse.nl>

	* dlls/gdi/tests/generated.c, dlls/kernel32/tests/generated.c,
	  dlls/ntdll/tests/generated.c, dlls/rpcrt4/tests/generated.c,
	  dlls/shell32/tests/generated.c, dlls/shlwapi/tests/generated.c,
	  dlls/urlmon/tests/generated.c, dlls/user/tests/generated.c,
	  tools/winapi/tests.dat, tools/winapi/winapi_test:
	winapi_test: Regenerate tests.
	Remove structs from test list which have preprocessor directives in
	their definitions (winapi_test can't handle that).

2006-10-10  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/helpers.c, dlls/msi/msipriv.h,
	  dlls/msi/package.c, dlls/msi/tests/package.c:
	msi: Set the SourceDir and SOURCEDIR properties in the ResolveSource action.

	* dlls/msi/tests/package.c:
	msi: Clean up after the package tests.

2006-10-11  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msiquery.c:
	msi: Check transforms have the correct storage guid.

	* dlls/msi/tests/db.c:
	msi: Check that transforms return the correct data.

2006-10-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/spy.c, include/winuser.h:
	user: Add some missing messages to the message spy.

2006-10-10  Michael Ploujnikov <ploujj@gmail.com>

	* dlls/mlang/tests/Makefile.in, dlls/mlang/tests/mlang.c:
	mlang/tests: Win64 printf format warning fixes.

	* dlls/usp10/tests/Makefile.in, dlls/usp10/tests/usp10.c:
	usp10/tests: Win64 printf format warning fixes.

	* dlls/psapi/tests/Makefile.in, dlls/psapi/tests/psapi_main.c:
	psapi/tests: Win64 printf format warning fixes.

	* dlls/secur32/tests/Makefile.in, dlls/secur32/tests/main.c,
	  dlls/secur32/tests/ntlm.c, dlls/secur32/tests/schannel.c,
	  dlls/secur32/tests/secur32.c:
	secur32/tests: Win64 printf format warning fixes.

2006-10-10  H. Verbeet <hverbeet@gmail.com>

	* programs/regedit/regproc.c:
	regedit: Format warning fixes.

	* programs/wordpad/wordpad.c:
	wordpad: Format warning fixes.

	* dlls/ddraw/Makefile.in, dlls/ddraw/clipper.c, dlls/ddraw/ddraw.c,
	  dlls/ddraw/ddraw_thunks.c, dlls/ddraw/device.c,
	  dlls/ddraw/direct3d.c, dlls/ddraw/executebuffer.c,
	  dlls/ddraw/gamma.c, dlls/ddraw/light.c, dlls/ddraw/main.c,
	  dlls/ddraw/material.c, dlls/ddraw/palette.c, dlls/ddraw/parent.c,
	  dlls/ddraw/surface.c, dlls/ddraw/texture.c, dlls/ddraw/utils.c,
	  dlls/ddraw/vertexbuffer.c, dlls/ddraw/viewport.c:
	ddraw: Win64 printf format warning fixes.

	* dlls/d3d9/tests/surface.c:
	d3d9: Disable the surface pitch size test for now, just check alignment instead.

2006-10-10  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: WinME sometimes returns short filenames.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Be more verbose and aware of root directory.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: More checks for various LZOpenFile[AW] operations on existing files.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Non-op cosmetics for LZOpenFile[AW] operations.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Test more last errors set by LZOpenFile[AW].

2006-10-10  H. Verbeet <hverbeet@gmail.com>

	* dlls/ddraw/tests/Makefile.in, dlls/ddraw/tests/d3d.c,
	  dlls/ddraw/tests/ddrawmodes.c, dlls/ddraw/tests/dsurface.c,
	  dlls/ddraw/tests/refcount.c:
	ddraw/tests: Win64 printf format warning fixes.

	* dlls/d3d9/Makefile.in, dlls/d3d9/basetexture.c, dlls/d3d9/cubetexture.c,
	  dlls/d3d9/d3d9_main.c, dlls/d3d9/device.c, dlls/d3d9/directx.c,
	  dlls/d3d9/indexbuffer.c, dlls/d3d9/pixelshader.c, dlls/d3d9/query.c,
	  dlls/d3d9/resource.c, dlls/d3d9/stateblock.c, dlls/d3d9/surface.c,
	  dlls/d3d9/swapchain.c, dlls/d3d9/texture.c, dlls/d3d9/vertexbuffer.c,
	  dlls/d3d9/vertexdeclaration.c, dlls/d3d9/vertexshader.c,
	  dlls/d3d9/volume.c, dlls/d3d9/volumetexture.c:
	d3d9: Win64 printf format warning fixes.

	* dlls/d3d8/tests/Makefile.in, dlls/d3d8/tests/d3d8_main.c,
	  dlls/d3d8/tests/device.c:
	d3d8/tests: Win64 printf format warning fixes.

	* dlls/d3d8/Makefile.in, dlls/d3d8/basetexture.c, dlls/d3d8/cubetexture.c,
	  dlls/d3d8/d3d8_main.c, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d8/indexbuffer.c, dlls/d3d8/pixelshader.c,
	  dlls/d3d8/resource.c, dlls/d3d8/stateblock.c, dlls/d3d8/surface.c,
	  dlls/d3d8/swapchain.c, dlls/d3d8/texture.c, dlls/d3d8/vertexbuffer.c,
	  dlls/d3d8/vertexshader.c, dlls/d3d8/volume.c,
	  dlls/d3d8/volumetexture.c:
	d3d8: Win64 printf format warning fixes.

	* dlls/wined3d/baseshader.c:
	wined3d: Improve shader_dump_decl_usage() TRACEs.

2006-10-10  Karsten Elfenbein <kelfe@gmx.de>

	* dlls/wined3d/query.c:
	wined3d: Corrected names in checkGLcall text.

2006-10-10  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/ddraw/ddraw.c:
	ddraw: Fix for DDSURFACEDESC param in CreateSurface.

2006-10-10  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* tools/widl/parser.l:
	widl: Cast-qual warning fix.

2006-10-10  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/shlwapi/tests/shreg.c:
	shlwapi: Cast-qual warnings fix.

2006-10-10  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Fix Win64 printf format warnings.

2006-10-10  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/appsearch.c,
	  dlls/msi/classes.c, dlls/msi/cond.y, dlls/msi/custom.c,
	  dlls/msi/dialog.c, dlls/msi/events.c, dlls/msi/files.c,
	  dlls/msi/font.c, dlls/msi/format.c, dlls/msi/helpers.c,
	  dlls/msi/install.c, dlls/msi/msi.c, dlls/msi/msipriv.h,
	  dlls/msi/package.c, dlls/msi/source.c, dlls/msi/upgrade.c:
	msi: Merge action.h into msipriv.h.

	* dlls/msi/msipriv.h, dlls/msi/table.c:
	msi: Make msi_makestring static.

2006-10-10  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/dmime/Makefile.in, dlls/dmime/audiopath.c, dlls/dmime/dmutils.c,
	  dlls/dmime/graph.c, dlls/dmime/lyricstrack.c,
	  dlls/dmime/markertrack.c, dlls/dmime/paramcontroltrack.c,
	  dlls/dmime/patterntrack.c, dlls/dmime/performance.c,
	  dlls/dmime/segment.c, dlls/dmime/segmentstate.c,
	  dlls/dmime/segtriggertrack.c, dlls/dmime/seqtrack.c,
	  dlls/dmime/sysextrack.c, dlls/dmime/tempotrack.c,
	  dlls/dmime/timesigtrack.c, dlls/dmime/tool.c, dlls/dmime/wavetrack.c:
	dmime: Win64 printf format warning fixes.

	* dlls/kernel32/tests/Makefile.in, dlls/kernel32/tests/alloc.c,
	  dlls/kernel32/tests/atom.c, dlls/kernel32/tests/change.c,
	  dlls/kernel32/tests/codepage.c, dlls/kernel32/tests/comm.c,
	  dlls/kernel32/tests/console.c, dlls/kernel32/tests/directory.c,
	  dlls/kernel32/tests/drive.c, dlls/kernel32/tests/environ.c,
	  dlls/kernel32/tests/file.c, dlls/kernel32/tests/format_msg.c,
	  dlls/kernel32/tests/heap.c, dlls/kernel32/tests/locale.c,
	  dlls/kernel32/tests/module.c, dlls/kernel32/tests/path.c,
	  dlls/kernel32/tests/pipe.c, dlls/kernel32/tests/process.c,
	  dlls/kernel32/tests/sync.c, dlls/kernel32/tests/thread.c,
	  dlls/kernel32/tests/time.c, dlls/kernel32/tests/toolhelp.c,
	  dlls/kernel32/tests/version.c, dlls/kernel32/tests/virtual.c:
	kernel32/tests: Win64 printf format warning fixes.

2006-10-08  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/tests/input.c:
	user: Add test for LL mouse hook and [Get|Set]CursorPos.

2006-10-09  Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>

	* programs/regedit/edit.c, programs/regedit/regedit.c:
	programs/regedit: Fix format specifiers for _stscanf and fprintf.

2006-10-09  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private_types.h:
	wined3d: Move D3DSP dest modifier related items into the WINED3D namespace.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private_types.h:
	wined3d: Move D3DSP source modifier-related items into the WINED3D namespace.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h, dlls/wined3d/wined3d_private_types.h:
	wined3d: Move D3DSP_REG structures into the WINED3D namespace.

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private_types.h,
	  include/wine/wined3d_types.h:
	wined3d: Move D3DSP DCL-related structures into WINED3D namespace.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private_types.h:
	wined3d: Move D3DSPR structure into the WINED3D namespace.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h,
	  dlls/wined3d/wined3d_private_types.h:
	wined3d: Move D3DSIO structure into WINED3D namespace.

2006-10-10  Frank Richter <frank.richter@gmail.com>

	* dlls/kernel32/nls/winerr_enu.mc:
	kernel32: Fix typos in English messages.

2006-10-09  Michael Ploujnikov <ploujj@gmail.com>

	* dlls/msi/tests/Makefile.in, dlls/msi/tests/db.c,
	  dlls/msi/tests/format.c, dlls/msi/tests/install.c,
	  dlls/msi/tests/package.c:
	msi/tests: Win64 printf format warning fixes.

	* dlls/setupapi/tests/Makefile.in, dlls/setupapi/tests/devinst.c,
	  dlls/setupapi/tests/parser.c, dlls/setupapi/tests/query.c,
	  dlls/setupapi/tests/stringtable.c:
	setupapi/tests: Win64 printf format warning fixes.

	* dlls/uxtheme/tests/Makefile.in:
	uxtheme: Win64 printf format warning fixes.

2006-10-09  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/itss/chm_lib.c, dlls/itss/lzx.c, dlls/msvcrt/tests/file.c,
	  dlls/oleaut32/ungif.c, dlls/winmm/winenas/audio.c, libs/wpp/ppl.l,
	  libs/wpp/wpp.c, programs/taskmgr/perfdata.c:
	janitorial: Remove remaining NULL checks before free() (found by Smatch).

	* tools/widl/parser.y, tools/winedump/msmangle.c, tools/winedump/search.c,
	  tools/winedump/symbol.c, tools/wmc/write.c, tools/wrc/parser.y:
	tools: Remove redundant NULL checks before free() (found by Smatch).

	* server/atom.c, server/change.c, server/console.c, server/hook.c,
	  server/mailslot.c, server/mapping.c, server/named_pipe.c,
	  server/process.c, server/queue.c, server/registry.c,
	  server/request.c, server/thread.c, server/token.c, server/window.c:
	server: Remove redundant NULL check before free() (found by Smatch).

2006-10-10  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/table.c:
	msi: Fix a memory leak.

	* dlls/msi/msiquery.c:
	msi: Avoid an unnecessary strdup.

	* dlls/msi/table.c:
	msi: Avoid reading the transform table data twice.

	* dlls/msi/tests/db.c, dlls/msi/tests/format.c, dlls/msi/tests/install.c,
	  dlls/msi/tests/package.c:
	msi: Fix handle leaks in the test cases.

	* dlls/msi/appsearch.c, dlls/msi/custom.c, dlls/msi/database.c:
	msi: Fix memory leaks and bad frees.

2006-10-10  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

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

2006-10-09  Markus Amsler <markus.amsler@oribi.org>

	* dlls/wined3d/directx.c:
	wined3d: Fix DEBUG_SINGLE_MODE.

2006-10-09  James Hawkins <truiken@gmail.com>

	* dlls/msi/appsearch.c:
	msi: NULL-terminate dst on error.

	* dlls/msi/appsearch.c:
	msi: Add missing sizeof(WCHAR) multiplier.

2006-10-10  Frank Richter <frank.richter@gmail.com>

	* dlls/kernel32/Makefile.in, dlls/kernel32/kernel.rc,
	  dlls/kernel32/nls/winerr_deu.mc:
	kernel32: Added German translation of messages.

	* dlls/kernel32/nls/deu.nls:
	kernel32: Translated some more NLS strings to German.

2006-10-10  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/dsound/tests/Makefile.in, dlls/dsound/tests/capture.c,
	  dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c,
	  dlls/dsound/tests/dsound.c, dlls/dsound/tests/dsound8.c,
	  dlls/dsound/tests/duplex.c, dlls/dsound/tests/propset.c:
	dsound/tests: Win64 printf format warning fixes.

	* dlls/dplayx/Makefile.in, dlls/dplayx/dplay.c, dlls/dplayx/dplaysp.c,
	  dlls/dplayx/dplayx_global.c, dlls/dplayx/dplayx_main.c,
	  dlls/dplayx/dplayx_messages.c, dlls/dplayx/dplobby.c,
	  dlls/dplayx/lobbysp.c:
	dplayx: Win64 printf format warning fixes.

	* dlls/avifil32/Makefile.in, dlls/avifil32/acmstream.c,
	  dlls/avifil32/api.c, dlls/avifil32/avifile.c,
	  dlls/avifil32/editstream.c, dlls/avifil32/extrachunk.c,
	  dlls/avifil32/factory.c, dlls/avifil32/getframe.c,
	  dlls/avifil32/icmstream.c, dlls/avifil32/tmpfile.c,
	  dlls/avifil32/wavfile.c:
	avifil32: Win64 printf format warning fixes.

2006-10-09  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/mapi32/Makefile.in, dlls/mapi32/imalloc.c,
	  dlls/mapi32/mapi32_main.c, dlls/mapi32/prop.c,
	  dlls/mapi32/sendmail.c, dlls/mapi32/util.c:
	mapi32: Win64 printf format warning fixes.

	* dlls/version/tests/Makefile.in, dlls/version/tests/info.c,
	  dlls/version/tests/install.c:
	version/tests: Win64 printf format warning fixes.

	* dlls/mlang/Makefile.in, dlls/mlang/mlang.c:
	mlang: Win64 printf format warning fixes.

	* dlls/dmcompos/Makefile.in, dlls/dmcompos/chordmap.c,
	  dlls/dmcompos/chordmaptrack.c, dlls/dmcompos/composer.c,
	  dlls/dmcompos/dmcompos_main.c, dlls/dmcompos/signposttrack.c:
	dmcompos: Win64 printf format warning fixes.

	* dlls/msacm32.drv/Makefile.in, dlls/msacm32.drv/wavemap.c:
	msacm32.drv: Win64 printf format warning fixes.

	* dlls/mcicda/Makefile.in, dlls/mcicda/mcicda.c:
	mcicda: Win64 printf format warning fixes.

	* dlls/odbc32/Makefile.in, dlls/odbc32/proxyodbc.c:
	odbc32: Win64 printf format warning fixes.

2006-10-09  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/resources.h, dlls/comctl32/tests/rsrc.rc,
	  dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Fix the TB_ADDSTRING from resources for a NUL delimiter.

2006-10-08  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Merge AddButtonsA and AddButtonsW into AddButtonsT.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Create the tooltip control during WM_MOUSEMOVE so that the
	NM_TOOLTIPSCREATE is not sent too early.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Move add/remove/setrect tooltip code to separate functions.

2006-10-09  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Implement ITypeInfo_CreateInstance.

2006-10-09  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/main.c:
	ddraw: Remove the process counter.

	* dlls/ddraw/main.c:
	ddraw: Protect the ddraw list.

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/ddraw/main.c:
	ddraw: Make the ddraw list a wine list.

2006-10-09  Mike McCormack <mike@codeweavers.com>

	* dlls/riched20/editor.c:
	riched20: Don't crash if a colour isn't found.

2006-10-09  James Hawkins <truiken@gmail.com>

	* dlls/advpack/files.c, dlls/advpack/install.c:
	advpack: Make internal functions static.

2006-10-07  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_main.c, dlls/wined3d/wined3d_private.h:
	wined3d: Make the shader mode selections per device.

2006-10-07  Nick Burns <adger44@hotmail.com>

	* tools/winegcc/winegcc.c:
	winegcc: __stdcall__ and __cdecl__ defined safely for Mac OSX.

	* include/msvcrt/process.h:
	msvcrt/process.h: __stdcall__ defined safely for Mac OSX.

2006-10-07  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/d3d9/tests/Makefile.in, dlls/d3d9/tests/device.c,
	  dlls/d3d9/tests/shader.c, dlls/d3d9/tests/stateblock.c,
	  dlls/d3d9/tests/surface.c, dlls/d3d9/tests/texture.c,
	  dlls/d3d9/tests/vertexdeclaration.c, dlls/d3d9/tests/volume.c:
	d3d9/tests: Printf format fixes for d3d9 tests.

	* dlls/d3d9/tests/stateblock.c:
	d3d9/tests: Make d3d9 tests Wcast-qual compliant.

	* dlls/d3d9/tests/stateblock.c:
	d3d9/tests: Remove unused device parameter.

	* dlls/d3d9/tests/stateblock.c:
	d3d9/tests: Add init/teardown handlers for state tests.

	* dlls/d3d9/tests/stateblock.c:
	d3d9/tests: Clean up get/set handler arguments.

2006-10-08  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/user/misc.c:
	user32: Return a fake device notification handle in RegisterDeviceNotificationA.

	* dlls/msxml3/Makefile.in, dlls/msxml3/version.rc:
	msxml3: Add a version resource.

2006-10-07  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/winex11.drv/Makefile.in, dlls/winex11.drv/bitblt.c,
	  dlls/winex11.drv/bitmap.c, dlls/winex11.drv/brush.c,
	  dlls/winex11.drv/clipboard.c, dlls/winex11.drv/dce.c,
	  dlls/winex11.drv/desktop.c, dlls/winex11.drv/dib.c,
	  dlls/winex11.drv/event.c, dlls/winex11.drv/graphics.c,
	  dlls/winex11.drv/keyboard.c, dlls/winex11.drv/mouse.c,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/palette.c,
	  dlls/winex11.drv/scroll.c, dlls/winex11.drv/settings.c,
	  dlls/winex11.drv/text.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/winpos.c, dlls/winex11.drv/x11ddraw.c,
	  dlls/winex11.drv/xdnd.c, dlls/winex11.drv/xim.c,
	  dlls/winex11.drv/xrandr.c, dlls/winex11.drv/xrender.c,
	  dlls/winex11.drv/xvidmode.c:
	winex11drv: Win64 printf format warning fixes.

2006-10-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* server/ptrace.c:
	server: Cast-qual warning fix.

2006-10-09  James Hawkins <truiken@gmail.com>

	* include/msi.h, include/msiquery.h:
	msi: Add missing declarations to the public headers.

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/custom.c,
	  dlls/msi/files.c, dlls/msi/helpers.c, dlls/msi/install.c,
	  dlls/msi/msi.c, dlls/msi/msipriv.h, dlls/msi/package.c,
	  dlls/msi/registry.c, dlls/msi/select.c:
	msi: Make internal functions static.

2006-10-06  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c, dlls/msi/msipriv.h, dlls/msi/msiquery.c:
	msi: Perform button control events in greatest to least order.

2006-10-08  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/uninstaller/Pl.rc:
	uninstaller: Fix Polish translation.

	* programs/winefile/Pl.rc:
	winefile: Update Polish translation.

	* programs/clock/Pl.rc:
	clock: Update Polish translation.

	* programs/notepad/Pl.rc:
	notepad: Update Polish translation.

	* programs/progman/Pl.rc, programs/progman/rsrc.rc:
	progman: Add Polish translation.

2006-10-08  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/dmscript/Makefile.in, dlls/dmscript/dmscript_main.c,
	  dlls/dmscript/script.c, dlls/dmscript/scripttrack.c:
	dmscript: Win64 printf format warning fixes.

	* dlls/rasapi32/Makefile.in, dlls/rasapi32/rasapi.c:
	rasapi32: Win64 printf format warning fixes.

	* dlls/rsaenh/Makefile.in, dlls/rsaenh/rsaenh.c:
	rsaenh: Win64 printf format warning fixes.

	* dlls/dswave/Makefile.in, dlls/dswave/dswave.c,
	  dlls/dswave/dswave_main.c:
	dswave: Win64 printf format warning fixes.

	* dlls/dpnet/Makefile.in, dlls/dpnet/address.c, dlls/dpnet/client.c,
	  dlls/dpnet/dpnet_main.c:
	dpnet: Win64 printf format warning fixes.

	* dlls/hlink/Makefile.in, dlls/hlink/browse_ctx.c,
	  dlls/hlink/hlink_main.c, dlls/hlink/link.c:
	hlink: Win64 printf format warning fixes.

	* dlls/qcap/Makefile.in, dlls/qcap/capturegraph.c, dlls/qcap/enummedia.c,
	  dlls/qcap/enumpins.c, dlls/qcap/pin.c, dlls/qcap/v4l.c,
	  dlls/qcap/vfwcapture.c:
	qcap: Win64 printf format warning fixes.

	* dlls/netapi32/tests/Makefile.in, dlls/netapi32/tests/access.c,
	  dlls/netapi32/tests/apibuf.c, dlls/netapi32/tests/ds.c,
	  dlls/netapi32/tests/wksta.c:
	netapi32: Win64 printf format warning fixes.

	* dlls/version/Makefile.in, dlls/version/info.c, dlls/version/install.c,
	  dlls/version/resource.c, dlls/version/ver16.c:
	version: Win64 printf format warning fixes.

	* dlls/uxtheme/Makefile.in, dlls/uxtheme/draw.c, dlls/uxtheme/main.c,
	  dlls/uxtheme/msstyles.c, dlls/uxtheme/system.c:
	uxtheme: Win64 printf format warning fixes.

	* dlls/wintab32/Makefile.in, dlls/wintab32/context.c,
	  dlls/wintab32/manager.c, dlls/wintab32/wintab16.c,
	  dlls/wintab32/wintab32.c:
	wintab32: Win64 printf format warning fixes.

	* dlls/d3dxof/Makefile.in, dlls/d3dxof/d3dxof.c:
	d3dxof: Win64 printf format warning fixes.

	* dlls/vmm.vxd/Makefile.in, dlls/vmm.vxd/vmm.c:
	vmm.vxd: Win64 printf format warning fixes.

	* dlls/dmsynth/Makefile.in, dlls/dmsynth/dmsynth_main.c,
	  dlls/dmsynth/synth.c, dlls/dmsynth/synthsink.c:
	dmsynth: Win64 printf format warning fixes.

	* dlls/ws2_32/tests/Makefile.in, dlls/ws2_32/tests/sock.c:
	ws2_32/tests: Win64 printf format warning fixes.

	* dlls/pstorec/Makefile.in, dlls/pstorec/pstorec.c:
	pstorec: Win64 printf format warning fixes.

	* dlls/wsock32/Makefile.in, dlls/wsock32/service.c, dlls/wsock32/socket.c:
	wsock32: Win64 printf format warning fixes.

	* dlls/devenum/Makefile.in, dlls/devenum/createdevenum.c,
	  dlls/devenum/devenum_main.c, dlls/devenum/mediacatenum.c,
	  dlls/devenum/parsedisplayname.c:
	devenum: Win64 printf format warning fixes.

	* dlls/msrle32/Makefile.in, dlls/msrle32/msrle32.c:
	msrle32: Win64 printf format warning fixes.

	* dlls/imagehlp/Makefile.in, dlls/imagehlp/access.c,
	  dlls/imagehlp/integrity.c, dlls/imagehlp/modify.c:
	imagehlp: Win64 printf format warning fixes.

	* dlls/riched20/tests/Makefile.in, dlls/riched20/tests/editor.c:
	riched20/tests: Win64 printf format warning fixes.

2006-10-09  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw.c:
	ddraw: Set the DDSCAPS2_MIPMAPSUBLEVEL flag on sublevels.

2006-10-08  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/rsaenh/tests/Makefile.in, dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Win64 printf format warning fixes.

	* dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Make hmac test run on all windows versions.

	* dlls/msi/tests/install.c:
	msi: Make tests run on Win98 again.

2006-10-08  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* tools/wine.inf:
	wine.inf: Add ddeml.dll to fake dlls.

2006-10-07  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/Makefile.in, dlls/dinput/device.c,
	  dlls/dinput/dinput_main.c, dlls/dinput/effect_linuxinput.c,
	  dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Win64 printf format warning fixes.

2006-10-07  Hans Leidekker <hans@it.vu.nl>

	* dlls/shell32/tests/Makefile.in, dlls/shell32/tests/shelllink.c,
	  dlls/shell32/tests/shellpath.c, dlls/shell32/tests/shlexec.c,
	  dlls/shell32/tests/shlfileop.c, dlls/shell32/tests/shlfolder.c:
	shell32/tests: Win64 printf format warning fixes.

	* dlls/shell32/Makefile.in, dlls/shell32/autocomplete.c,
	  dlls/shell32/brsfolder.c, dlls/shell32/changenotify.c,
	  dlls/shell32/classes.c, dlls/shell32/clipboard.c,
	  dlls/shell32/control.c, dlls/shell32/cpanelfolder.c,
	  dlls/shell32/dataobject.c, dlls/shell32/debughlp.c,
	  dlls/shell32/dialogs.c, dlls/shell32/dragdrophelper.c,
	  dlls/shell32/enumidlist.c, dlls/shell32/folders.c,
	  dlls/shell32/pidl.c, dlls/shell32/shell32_main.c,
	  dlls/shell32/shelllink.c, dlls/shell32/shellole.c,
	  dlls/shell32/shellord.c, dlls/shell32/shellpath.c,
	  dlls/shell32/shellstring.c, dlls/shell32/shfldr_desktop.c,
	  dlls/shell32/shfldr_fs.c, dlls/shell32/shfldr_mycomp.c,
	  dlls/shell32/shfldr_unixfs.c, dlls/shell32/shlexec.c,
	  dlls/shell32/shlfolder.c, dlls/shell32/shlfsbind.c,
	  dlls/shell32/shlmenu.c, dlls/shell32/shlview.c,
	  dlls/shell32/shv_bg_cmenu.c, dlls/shell32/shv_item_cmenu.c,
	  dlls/shell32/systray.c:
	shell32: Win64 printf format warning fixes.

2006-10-07  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/user/tests/Makefile.in, dlls/user/tests/class.c,
	  dlls/user/tests/clipboard.c, dlls/user/tests/dce.c,
	  dlls/user/tests/dde.c, dlls/user/tests/dialog.c,
	  dlls/user/tests/edit.c, dlls/user/tests/input.c,
	  dlls/user/tests/listbox.c, dlls/user/tests/menu.c,
	  dlls/user/tests/monitor.c, dlls/user/tests/msg.c,
	  dlls/user/tests/resource.c, dlls/user/tests/sysparams.c,
	  dlls/user/tests/text.c, dlls/user/tests/win.c,
	  dlls/user/tests/winstation.c, dlls/user/tests/wsprintf.c:
	user/tests: Win64 printf format warning fixes.

2006-10-08  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/dxerr8/Makefile.in, dlls/dxerr8/dxerr8.c:
	dxerr8: Win64 printf format warning fixes.

	* dlls/olecli32/Makefile.in, dlls/olecli32/olecli16.c,
	  dlls/olecli32/olecli_main.c:
	olecli32: Win64 printf format warning fixes.

	* dlls/dxerr9/Makefile.in, dlls/dxerr9/dxerr9.c:
	dxerr9: Win64 printf format warning fixes.

	* dlls/olesvr32/Makefile.in, dlls/olesvr32/olesvr_main.c:
	olesvr32: Win64 printf format warning fixes.

	* dlls/quartz/tests/Makefile.in, dlls/quartz/tests/filtergraph.c,
	  dlls/quartz/tests/memallocator.c:
	quartz/tests: Win64 printf format warning fixes.

	* dlls/rpcrt4/tests/Makefile.in, dlls/rpcrt4/tests/cstub.c,
	  dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4/tests: Win64 printf format warning fixes.

	* dlls/psapi/Makefile.in, dlls/psapi/psapi_main.c:
	psapi: Win64 printf format warning fixes.

2006-10-07  Hans Leidekker <hans@it.vu.nl>

	* dlls/iphlpapi/Makefile.in, dlls/iphlpapi/iphlpapi_main.c,
	  dlls/iphlpapi/tests/Makefile.in, dlls/iphlpapi/tests/iphlpapi.c:
	iphlpapi: Win64 printf format warning fixes.

2006-10-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/ole32/ole2.c, dlls/ole32/tests/ole2.c:
	ole32: Don't fail in OleCreate if created object doesn't implement
	IRunnableObject or IOleChache.

2006-10-07  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/comdlg32/fontdlg16.c:
	comdlg32: Move NULL check before use (Coverity).

2006-10-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/Makefile.in, dlls/mshtml/tests/htmldoc.c,
	  dlls/mshtml/tests/misc.c, dlls/mshtml/tests/protocol.c:
	mshtml: Win64 printf format warning fixes.

	* dlls/urlmon/tests/Makefile.in, dlls/urlmon/tests/misc.c,
	  dlls/urlmon/tests/protocol.c, dlls/urlmon/tests/url.c:
	urlmon: Win64 printf format warning fixes.

	* dlls/shdocvw/tests/Makefile.in, dlls/shdocvw/tests/shortcut.c,
	  dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Win64 printf format warning fixes.

2006-10-06  Hans Leidekker <hans@it.vu.nl>

	* dlls/shlwapi/tests/Makefile.in, dlls/shlwapi/tests/clist.c,
	  dlls/shlwapi/tests/ordinal.c, dlls/shlwapi/tests/path.c,
	  dlls/shlwapi/tests/shreg.c, dlls/shlwapi/tests/string.c:
	shlwapi/tests: Win64 printf format warning fixes.

2006-10-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/winefile/winefile.c:
	winefile: Cast-qual warnings fix.

2006-10-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/winebrowser/main.c:
	winebrowser: Cast-qual warnings fix.

	* programs/wineboot/wineboot.c:
	wineboot: Cast-qual warning fix.

2006-10-06  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shlwapi/shlwapi_main.c:
	shlwapi: Update info in DllGetVersion.

2006-10-07  Mike McCormack <mike@codeweavers.com>

	* dlls/d3d8/tests/d3d8_main.c:
	d3d8: Don't crash if d3d8 can't be loaded.

2006-10-06  James Hawkins <truiken@gmail.com>

	* dlls/shdocvw/persist.c:
	shdocvw: Return S_OK in PersistStorage_InitNew.

	* dlls/shell32/brsfolder.c, dlls/shell32/changenotify.c,
	  dlls/shell32/cpanelfolder.c, dlls/shell32/dataobject.c,
	  dlls/shell32/pidl.c, dlls/shell32/shell.c,
	  dlls/shell32/shell32_main.c, dlls/shell32/shfldr_desktop.c,
	  dlls/shell32/shfldr_fs.c, dlls/shell32/shfldr_mycomp.c,
	  dlls/shell32/shlexec.c, dlls/shell32/shlmenu.c,
	  dlls/shell32/shlview.c, dlls/shell32/shv_item_cmenu.c,
	  dlls/shell32/trash.c:
	janitorial: Remove redundant NULL checks before SHFree.

	* dlls/devenum/devenum_main.c, dlls/devenum/parsedisplayname.c,
	  dlls/msdmo/dmort.c, dlls/oleaut32/usrmarshal.c,
	  dlls/qcap/enummedia.c, dlls/quartz/filesource.c,
	  dlls/quartz/filtermapper.c:
	janitorial: Remove redundant NULL checks before CoTaskMemFree (found by Smatch).

	* dlls/advpack/Makefile.in, dlls/advpack/advpack.c, dlls/advpack/files.c,
	  dlls/advpack/install.c, dlls/advpack/reg.c:
	advpack: Win64 printf format warning fixes.

2006-10-06  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/atl/Makefile.in, dlls/atl/atl_main.c, dlls/atl/registrar.c:
	atl: Win64 printf format warning fixes.

	* dlls/wnaspi32/Makefile.in, dlls/wnaspi32/aspi.c,
	  dlls/wnaspi32/winaspi16.c, dlls/wnaspi32/winaspi32.c:
	wnaspi32: Win64 printf format warning fixes.

	* dlls/wtsapi32/Makefile.in, dlls/wtsapi32/wtsapi32.c:
	wtsapi32: Win64 printf format warning fixes.

	* dlls/amstream/Makefile.in, dlls/amstream/amstream.c,
	  dlls/amstream/mediastream.c:
	amstream: Win64 printf format warning fixes.

	* dlls/vwin32.vxd/Makefile.in, dlls/vwin32.vxd/vwin32.c:
	vwin32.vxd: Win64 printf format warning fixes.

	* dlls/serialui/Makefile.in, dlls/serialui/confdlg.c:
	serialui: Win64 printf format warning fixes.

	* dlls/winemp3.acm/Makefile.in, dlls/winemp3.acm/mpegl3.c:
	winemp3.acm: Win64 printf format warning fixes.

	* dlls/dxdiagn/Makefile.in, dlls/dxdiagn/container.c,
	  dlls/dxdiagn/dxdiag_main.c, dlls/dxdiagn/provider.c:
	dxdiagn: Win64 printf format warning fixes.

	* dlls/winmm/wineoss/Makefile.in, dlls/winmm/wineoss/audio.c,
	  dlls/winmm/wineoss/dscapture.c, dlls/winmm/wineoss/dsrender.c,
	  dlls/winmm/wineoss/midi.c, dlls/winmm/wineoss/mixer.c,
	  dlls/winmm/wineoss/mmaux.c:
	winmm/wineoss: Win64 printf format warning fixes.

	* dlls/winmm/winealsa/Makefile.in, dlls/winmm/winealsa/audio.c,
	  dlls/winmm/winealsa/midi.c:
	winmm/winealsa: Win64 printf format warning fixes.

	* dlls/winmm/winearts/Makefile.in, dlls/winmm/winearts/audio.c:
	winmm/winearts: Win64 printf format warning fixes.

	* dlls/winmm/winenas/Makefile.in, dlls/winmm/winenas/audio.c:
	winmm/winenas: Win64 printf format warning fixes.

	* dlls/winmm/wineesd/Makefile.in, dlls/winmm/wineesd/audio.c:
	winmm/wineesd: Win64 printf format warning fixes.

	* dlls/winmm/winejack/Makefile.in, dlls/winmm/winejack/audio.c:
	winmm/winejack: Win64 printf format warning fixes.

2006-10-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/winecfg/appdefaults.c, programs/winecfg/drive.c:
	winecfg: Cast-qual warnings fix.

2006-10-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Give XInitThreads another chance.

2006-10-06  Hans Leidekker <hans@it.vu.nl>

	* dlls/winspool.drv/info.c:
	winspool.drv: Cast-qual warnings fix.

2006-10-06  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Add support for cached client credentials.

2006-10-06  Paul Chitescu <paulc@voip.null.ro>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/mscoree/Makefile.in, dlls/mscoree/mscoree.spec,
	  dlls/mscoree/mscoree_main.c:
	mscoree: Initial stub implementation.

2006-10-06  Francois Gouget <fgouget@free.fr>

	* dlls/dmloader/container.c, dlls/dmloader/debug.c,
	  dlls/dmloader/loader.c:
	dmloader: Modify the debugstr_DMUS_* functions to return strings that never
	end with a '\n'.

	* dlls/oleaut32/variant.c, dlls/usp10/usp10.c, dlls/wintab32/context.c:
	Tweak TRACE()s to simplify '\n' checks.

	* dlls/wined3d/directx.c:
	wined3d: Fix '\n' typo.

2006-10-06  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Add a stub implementation of ScriptStringValidate.

	* dlls/shlwapi/Makefile.in, dlls/shlwapi/assoc.c, dlls/shlwapi/clist.c,
	  dlls/shlwapi/istream.c, dlls/shlwapi/msgbox.c,
	  dlls/shlwapi/ordinal.c, dlls/shlwapi/path.c, dlls/shlwapi/reg.c,
	  dlls/shlwapi/regstream.c, dlls/shlwapi/shlwapi_main.c,
	  dlls/shlwapi/stopwatch.c, dlls/shlwapi/string.c,
	  dlls/shlwapi/thread.c, dlls/shlwapi/url.c:
	shlwapi: Win64 printf format warning fixes.

2006-10-05  Christopher GAUTIER <krys@via.ecp.fr>

	* dlls/wined3d/surface.c:
	wined3d: Disable GL_REGISTER_COMBINERS_NV (if supported) in
	IWineD3DSurfaceImpl_BltOverride.

2006-10-05  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Make msi_dialog_dup_property return a copy of the property if the property
	is empty.

	* dlls/ddraw/device.c:
	ddraw: Set lplpDirect3DViewport3 to NULL before returning an error (found
	by Smatch).

	* dlls/dinput/mouse.c:
	dinput: Call missing LeaveCriticalSection in the error case (found by Smatch).

	* dlls/dbghelp/msc.c:
	dbghelp: Remove redundant NULL checks before pdb_free (found by Smatch).

	* dlls/advapi32/service.c:
	advapi32: Remove redundant NULL check before SERV_free (found by Smatch).

	* dlls/crypt32/protectdata.c:
	crypt32: Remove redundant NULL checks before CryptMemFree (found by Smatch).

2006-10-05  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/conpoint.c, dlls/mshtml/hlink.c,
	  dlls/mshtml/htmlbody.c, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/htmldoc3.c, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmlelem2.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/htmlnode.c, dlls/mshtml/htmlselect.c,
	  dlls/mshtml/htmltextarea.c, dlls/mshtml/htmltextcont.c,
	  dlls/mshtml/install.c, dlls/mshtml/loadopts.c, dlls/mshtml/main.c,
	  dlls/mshtml/navigate.c, dlls/mshtml/nsembed.c, dlls/mshtml/nsio.c,
	  dlls/mshtml/nsservice.c, dlls/mshtml/olecmd.c, dlls/mshtml/oleobj.c,
	  dlls/mshtml/persist.c, dlls/mshtml/protocol.c,
	  dlls/mshtml/selection.c, dlls/mshtml/txtrange.c, dlls/mshtml/view.c:
	mshtml: Win64 printf format warning fixes.

2006-10-06  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/comboex.c:
	comctl32: Return the correct value for CB_GETLBTEXTLEN.

	* dlls/msi/table.c:
	msi: Fix transform traces.

	* dlls/msi/table.c:
	msi: Work around what appears to be a bug in native MSI's generation of
	transform data.

	* dlls/msi/table.c:
	msi: Transform the _Columns and _Tables tables first so the table metadata is
	present for new tables.

	* dlls/msi/table.c:
	msi: Handle null integers properly in transforms.

2006-10-06  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/cabinet/tests/extract.c:
	cabinet: Make tests run on Win98 again.

	* dlls/advpack/tests/files.c:
	advpack: Make tests run on Win98 again.

2006-10-05  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/tests/protectdata.c:
	crypt32: Cast-qual warnings fix.

2006-10-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Pitch alignment for the pow2Size.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Define the surface alignment in the header.

	* dlls/wined3d/surface.c:
	wined3d: Honor the pitch in a few more places.

	* dlls/wined3d/surface.c:
	wined3d: No color keying on surfaces with an alpha channel.

2006-10-05  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/d3d9/indexbuffer.c,
	  dlls/d3d9/texture.c, dlls/d3d9/vertexbuffer.c, dlls/d3d9/volume.c,
	  dlls/d3d9/volumetexture.c, dlls/ddraw/ddraw.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DUSAGE_OVERLAY.

	* dlls/ddraw/surface.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Add IWineD3DSurface::UpdateOverlay.

	* include/wine/wined3d_types.h:
	wined3d: Add DDOVERLAYFX struct.

	* dlls/ddraw/surface.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Add UpdatOverlayZOrder.

2006-10-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/surface.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Add IWineD3DSurface::GetOverlayPosition.

	* dlls/ddraw/surface.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Add IWineD3DSurface::SetOverlayPosition.

2006-10-05  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/classinfo.c,
	  dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/events.c,
	  dlls/shdocvw/factory.c, dlls/shdocvw/ie.c, dlls/shdocvw/navigate.c,
	  dlls/shdocvw/oleobject.c, dlls/shdocvw/regsvr.c,
	  dlls/shdocvw/shdocvw_main.c, dlls/shdocvw/shlinstobj.c,
	  dlls/shdocvw/view.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Win64 printf format warning fixes.

	* dlls/urlmon/Makefile.in, dlls/urlmon/binding.c, dlls/urlmon/file.c,
	  dlls/urlmon/format.c, dlls/urlmon/ftp.c, dlls/urlmon/http.c,
	  dlls/urlmon/internet.c, dlls/urlmon/sec_mgr.c, dlls/urlmon/session.c,
	  dlls/urlmon/umon.c, dlls/urlmon/umstream.c,
	  dlls/urlmon/urlmon_main.c:
	urlmon: Win64 printf format warning fixes.

2006-10-05  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/taskmgr/Fr.rc:
	taskmgr: Updated French translation.

	* programs/cmdlgtst/Fr.rc:
	cmdlgtst: Updated French translation.

2006-10-06  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* tools/wine.inf:
	wine.inf: Add d3d9 to fake dlls.

2006-10-05  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/cabinet/tests/Makefile.in, dlls/cabinet/tests/extract.c:
	cabinet/tests: Win64 printf format warning fixes.

	* dlls/iccvid/Makefile.in, dlls/iccvid/iccvid.c:
	iccvid: Win64 printf format warning fixes.

	* dlls/msvcrt/tests/Makefile.in, dlls/msvcrt/tests/time.c:
	msvcrt/tests: Win64 printf format warning fixes.

	* dlls/msdmo/Makefile.in, dlls/msdmo/dmoreg.c, dlls/msdmo/dmort.c:
	msdmo: Win64 printf format warning fixes.

	* dlls/comcat/tests/Makefile.in, dlls/comcat/tests/comcat.c:
	comcat/tests: Win64 printf format warning fixes.

	* dlls/msacm32/tests/Makefile.in, dlls/msacm32/tests/msacm.c:
	msacm32/tests: Win64 printf format warning fixes.

	* dlls/powrprof/Makefile.in, dlls/powrprof/powrprof.c:
	powrprof: Win64 printf format warning fixes.

	* dlls/comdlg32/tests/Makefile.in, dlls/comdlg32/tests/printdlg.c:
	comdlg32/tests: Win64 printf format warning fixes.

	* dlls/msvidc32/Makefile.in, dlls/msvidc32/msvideo1.c:
	msvidc32: Win64 printf format warning fixes.

2006-10-05  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wininet/tests/http.c:
	wininet/tests: Cast-qual warning fix.

2006-10-05  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/opengl_ext.h, include/wine/wgl.h:
	x11drv: Fix building issue.

2006-10-05  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c:
	wined3d: Correctly name a variable.

2006-10-05  Hans Leidekker <hans@it.vu.nl>

	* dlls/comctl32/comctl_Nl.rc, dlls/mpr/mpr_Pt.rc,
	  dlls/oledlg/oledlg_Nl.rc, dlls/shlwapi/shlwapi_Pt.rc,
	  dlls/wineps.drv/wps_Nl.rc:
	Don't use utf-8 in rc files.

2006-10-05  Francois Gouget <fgouget@free.fr>

	* dlls/crypt32/crypt32_Fr.rc, dlls/gphoto2.ds/gphoto2_Fr.rc,
	  dlls/hhctrl.ocx/Fr.rc, dlls/winspool.drv/Fr.rc,
	  programs/oleview/Fr.rc:
	French rc files must be encoded in iso-8859-1, not utf-8.

2006-10-05  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c:
	winex11.drv: Make all windows moveable by default.

2006-10-05  Paul Chitescu <paulc@voip.null.ro>

	* dlls/netapi32/ds.c, dlls/netapi32/netapi32.spec:
	netapi: Stub for DsGetDcNameA.

2006-10-05  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/bind.c:
	wldap32: Cast-qual warnings fix.

	* dlls/dnsapi/ns_parse.c:
	dnsapi: Cast-qual warnings fix.

	* dlls/mscms/profile.c:
	mscms: Cast-qual warnings fix.

	* dlls/mscms/transform.c:
	mscms: Document the transform functions.

2006-10-05  Francois Gouget <fgouget@free.fr>

	* dlls/atl/registrar.c, dlls/avicap32/avicap32_main.c,
	  dlls/comctl32/tab.c, dlls/comdlg32/printdlg.c, dlls/crypt32/main.c,
	  dlls/d3d8/pixelshader.c, dlls/d3d8/vertexshader.c,
	  dlls/d3d9/cubetexture.c, dlls/d3d9/pixelshader.c,
	  dlls/d3d9/vertexdeclaration.c, dlls/d3d9/vertexshader.c,
	  dlls/ddraw/device.c, dlls/ddraw/main.c, dlls/dmstyle/style.c,
	  dlls/gdi/freetype.c, dlls/mapi32/prop.c, dlls/mapi32/sendmail.c,
	  dlls/mapi32/util.c, dlls/msvfw32/msvideo_main.c,
	  dlls/netapi32/netbios.c, dlls/oleaut32/olepicture.c,
	  dlls/rpcrt4/rpcrt4_main.c, dlls/secur32/ntlm.c,
	  dlls/setupapi/devinst.c, dlls/shlwapi/ordinal.c, dlls/urlmon/umon.c,
	  dlls/user/scroll.c, dlls/uxtheme/system.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/utils.c,
	  dlls/winmm/winealsa/audio.c, programs/cmdlgtst/cmdlgtst.c,
	  programs/winecfg/driveui.c, programs/winecfg/libraries.c,
	  programs/winecfg/theme.c, programs/winecfg/x11drvdlg.c,
	  programs/wineconsole/curses.c, programs/winedbg/types.c:
	Add missing '\n's to Wine traces.

2006-10-05  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/sip.c:
	crypt32: Correct the documentation.

	* dlls/crypt32/sip.c:
	crypt32: Change function declaration to overcome some cast-qual warnings in
	future patches.

	* dlls/crypt32/sip.c:
	crypt32: Move some defines to the top as they will be needed in more functions.

2006-10-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/dinput/dinput_main.c:
	dinput: Only register the window class once to avoid race conditions.

2006-10-05  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/Makefile.in, dlls/wininet/cookie.c, dlls/wininet/dialogs.c,
	  dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/netconnection.c, dlls/wininet/urlcache.c,
	  dlls/wininet/utility.c:
	wininet: Win64 printf format warning fixes.

	* dlls/wininet/tests/Makefile.in, dlls/wininet/tests/http.c,
	  dlls/wininet/tests/internet.c, dlls/wininet/tests/url.c:
	wininet/tests: Win64 printf format warning fixes.

2006-10-05  Francois Gouget <fgouget@free.fr>

	* dlls/user/tests/sysparams.c:
	user/tests: It is perfectly valid for some sysparams registry fields
	to not be set if they have their default value. This is the case on
	Windows for instance.

	* programs/oleview/typelib.c:
	oleview: Fix the placement of a '\n'.

	* dlls/d3d8/device.c:
	d3d8: Fix '\n' typo.

	* programs/winecfg/driveui.c:
	winecfg: Remove unneeded memset() calls.

	* dlls/shell32/shlview.c:
	shell32: Don't forget to set stateMask when calling LVM_GETITEM/LVIF_STATE.
	Remove ZeroMemory() calls and instead set iSubItem = 0 manually.

	* dlls/gphoto2.ds/ui.c:
	gphoto2.ds: Remove ZeroMemory() calls and instead set the relevant fields
	(usually just iSubItem) to zero manually.

	* programs/taskmgr/dbgchnl.c, programs/taskmgr/debug.c,
	  programs/taskmgr/endproc.c, programs/taskmgr/priority.c,
	  programs/taskmgr/procpage.c:
	taskmgr: Remove ZeroMemory() calls and instead set the relevant fields (usually
	just iSubItem) to zero manually.

	* programs/winecfg/appdefaults.c:
	winecfg: Remove ZeroMemory() calls and instead set iSubItem = 0 manually.
	Fix on_selection_change() and on_remove_app_click() so they do set iSubItem = 0.

	* include/commctrl.h, include/winuser.h:
	include: Add new Vista SDK constants and structures.

2006-10-04  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/hook.c, dlls/user/message.c, dlls/user/user_private.h:
	user32: Pass hook handle to the destination thread.

2006-10-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/hook.c, include/wine/server_protocol.h, server/hook.c,
	  server/protocol.def, server/request.h, server/trace.c:
	server: Changed the get_next_hook request to allow retrieving the current
	hook too.

	* dlls/user/hook.c, dlls/user/user_private.h,
	  include/wine/server_protocol.h, server/hook.c, server/protocol.def,
	  server/trace.c:
	user32: Store the prev_unicode hook flag on the client side.

2006-10-04  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user/tests/dde.c:
	user/tests: Cast-qual warnings fix.

2006-10-05  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msxml3/Makefile.in, dlls/msxml3/domdoc.c, dlls/msxml3/node.c,
	  dlls/msxml3/parseerror.c:
	msxml3: Win64 printf format warning fixes.

	* dlls/midimap/Makefile.in, dlls/midimap/midimap.c:
	midimap: Win64 printf format warning fixes.

	* dlls/cfgmgr32/Makefile.in, dlls/cfgmgr32/main.c:
	cfgmgr32: Win64 printf format warning fixes.

	* dlls/msg711.acm/Makefile.in, dlls/msg711.acm/msg711.c:
	msg711.acm: Win64 printf format warning fixes.

	* dlls/imaadp32.acm/Makefile.in, dlls/imaadp32.acm/imaadp32.c:
	imaadp32.acm: Win64 printf format warning fixes.

	* dlls/msadp32.acm/Makefile.in, dlls/msadp32.acm/msadp32.c:
	msadp32.acm: Win64 printf format warning fixes.

	* dlls/usp10/Makefile.in, dlls/usp10/usp10.c:
	usp10: Win64 printf format warning fixes.

	* dlls/opengl32/Makefile.in, dlls/opengl32/wgl.c:
	opengl32: Win64 printf format warning fixes.

2006-10-05  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel32/actctx.c:
	kernel32: Return some fake data in FindActCtxSectionStringW.

	* dlls/msi/table.c:
	msi: Only ignore the StringPool and StringData in a transform.

	* dlls/msi/table.c:
	msi: Only declare the szStringData and szStringPool strings once.

	* dlls/msi/table.c:
	msi: Remove an unused variable.

	* dlls/msi/Makefile.in, dlls/msi/action.c, dlls/msi/appsearch.c,
	  dlls/msi/custom.c, dlls/msi/database.c, dlls/msi/dialog.c,
	  dlls/msi/files.c, dlls/msi/format.c, dlls/msi/insert.c,
	  dlls/msi/msi.c, dlls/msi/msiquery.c, dlls/msi/package.c,
	  dlls/msi/record.c, dlls/msi/registry.c, dlls/msi/source.c,
	  dlls/msi/suminfo.c, dlls/msi/table.c, dlls/msi/upgrade.c:
	msi: Win64 printf format warning fixes.

	* dlls/msi/tests/db.c:
	msi: Check that transforms preserve tables.

2006-10-05  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/regedit/Ko.rc:
	regedit: Updated Korean Resource.

2006-10-04  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c:
	crypt32: Don't crash when setting CRYPT_KEY_PROV_INFO with empty names.

2006-10-04  Karsten Elfenbein <kelfe@gmx.de>

	* dlls/d3d9/vertexdeclaration.c:
	d3d9: Fix typo in trace.

2006-10-04  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/oleview/Fr.rc:
	oleview: Updated French translation.

	* programs/regedit/Fr.rc:
	regedit: Updated French translation.

	* programs/taskmgr/Fr.rc:
	taskmgr: Updated French translation.

2006-10-04  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/winspool.drv/Pl.rc, dlls/winspool.drv/winspool.rc:
	winspool.drv: Add Polish translation.

	* programs/taskmgr/Pl.rc, programs/taskmgr/taskmgr.rc:
	taskmgr: Add Polish translation.

2006-10-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/serial.c:
	ntdll: Fixed typo in serial.c.

	* dlls/user/win.c, include/win.h, include/wine/server_protocol.h,
	  server/protocol.def, server/trace.c, server/window.c:
	user32: The per-window user data must be a DWORD_PTR.

	* include/wine/server_protocol.h, server/protocol.def, server/trace.c:
	server: Rearrange a few fields to avoid wasting padding space on 64 bits.

2006-10-04  Hans Leidekker <hans@it.vu.nl>

	* dlls/advapi32/tests/Makefile.in, dlls/advapi32/tests/crypt.c,
	  dlls/advapi32/tests/lsa.c, dlls/advapi32/tests/registry.c,
	  dlls/advapi32/tests/security.c:
	advapi32/tests: Win64 printf format warning fixes.

2006-10-04  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec:
	crypt32: Implement CertVerifyValidityNesting.

2006-10-04  James Hawkins <truiken@gmail.com>

	* dlls/user/dialog.c:
	user: Add missing sizeof(WCHAR) multiplier.

2006-10-04  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/Makefile.in, dlls/wintrust/crypt.c,
	  dlls/wintrust/register.c, dlls/wintrust/wintrust_main.c:
	wintrust: Win64 printf format warning fixes.

	* dlls/crypt32/tests/sip.c:
	crypt32: More tests for CryptSIPLoad.

2006-10-04  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/infosoft/Makefile.in, dlls/infosoft/wordbreaker.c:
	infosoft: Win64 printf format warning fixes.

	* dlls/ifsmgr.vxd/Makefile.in, dlls/ifsmgr.vxd/ifsmgr.c:
	ifsmgr.vxd: Win64 printf format warning fixes.

	* dlls/comcat/Makefile.in, dlls/comcat/information.c:
	comcat: Win64 printf format warning fixes.

	* dlls/activeds/Makefile.in, dlls/activeds/activeds_main.c:
	activeds: Win64 printf format warning fixes.

2006-10-04  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/regedit/Pl.rc:
	regedit: Update Polish translation.

2006-10-04  Hans Leidekker <hans@it.vu.nl>

	* dlls/mscms/mscms_priv.h:
	mscms: Restore the preprocessor hack.

2006-10-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/message.c, include/wine/server_protocol.h,
	  server/protocol.def, server/queue.c, server/trace.c:
	server: Pass the data for message callbacks as vararg from the client side.

	* dlls/user/message.c, include/wine/server_protocol.h,
	  server/protocol.def, server/queue.c:
	server: Return the data for callback results in the varargs part of the
	get_message request.

	* dlls/user/message.c, include/wine/server_protocol.h,
	  server/protocol.def, server/queue.c, server/trace.c:
	server: Return the data for winevent hooks in the varargs part of the get_message
	request.

2006-10-03  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Only apply the last font style in the list of styles.

	* dlls/msi/events.c:
	msi: Handle the SelectionBrowse event using ControlEvent_SpawnDialog.

	* dlls/msi/dialog.c:
	msi: Subscribe the SelectionTree control to the SelectionPath event.

	* dlls/msi/dialog.c:
	msi: Store the selected item in the SelectionTree control.

	* dlls/msi/dialog.c:
	msi: Publish the SelectionDescription and SelectionPath events when the
	selection changes in the SelectionTree control.

	* dlls/msi/dialog.c:
	msi: Properly initialize the SelectionTree control's attributes and property
	values.

	* dlls/msi/events.c:
	msi: Publish the SelectionPath event in the SetTargetPath event.

	* dlls/msi/action.h, dlls/msi/dialog.c, dlls/msi/events.c:
	msi: Provide a specific dialog to ControlEvent_SubscribeToEvent, as
	package->dialog does not always point to the same dialog.

	* dlls/msi/dialog.c:
	msi: Select the first item in the SelectionTree control.

	* dlls/msi/dialog.c:
	msi: Empty the window text if no text is provided.

	* dlls/msi/dialog.c:
	msi: Assign the property to path if the property is empty.

	* dlls/msi/dialog.c:
	msi: Don't ERR if a dialog doesn't provide control conditions, as they are
	not required.

	* dlls/msi/dialog.c:
	msi: Add missing '\n' to TRACE output.

2006-10-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	x11drv: Fix wgl pixel format bug.

	* dlls/gdi/driver.c, dlls/gdi/gdi32.spec, dlls/gdi/gdi_private.h,
	  dlls/gdi/opengl.c, dlls/opengl32/opengl32.spec, dlls/opengl32/wgl.c,
	  dlls/winex11.drv/opengl.c:
	gdi32: Route WGL font code through gdi32.dll.

	* dlls/gdi/Makefile.in, dlls/gdi/driver.c, dlls/gdi/gdi32.spec,
	  dlls/gdi/gdi_private.h, dlls/gdi/opengl.c,
	  dlls/opengl32/opengl32.spec, dlls/opengl32/wgl.c,
	  dlls/winex11.drv/opengl.c:
	gdi32: Route WGL context code through gdi32.dll.

2006-10-03  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/wineconsole/user.c:
	wineconsole: Make the user backend work on non-latin1 locales.

2006-10-03  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/hook.c:
	user: Move some common code into one function.

2006-10-03  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/base64.c, dlls/crypt32/cert.c,
	  dlls/crypt32/context.c, dlls/crypt32/crl.c, dlls/crypt32/decode.c,
	  dlls/crypt32/encode.c, dlls/crypt32/main.c, dlls/crypt32/oid.c,
	  dlls/crypt32/proplist.c, dlls/crypt32/serialize.c,
	  dlls/crypt32/sip.c, dlls/crypt32/store.c, dlls/crypt32/str.c:
	crypt32: Win64 printf format warning fixes.

	* dlls/crypt32/crypt32.spec:
	crypt32: Forward CryptAcquireContextU to CryptAcquireContextW.

2006-10-03  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/capi2032/cap20wxx.c:
	capi: Fix compiler warnings.

2006-10-03  Marcus Meissner <marcus@jet.franken.de>

	* tools/wine.inf:
	wine.inf: Add some more fake binaries.

2006-10-03  James Hawkins <truiken@gmail.com>

	* dlls/comctl32/treeview.c:
	comctl32: Set the TVIF_TEXT mask when notifying the parent window of a
	selection change.

2006-10-03  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/w32skrnl/Makefile.in, dlls/w32skrnl/w32sys.c,
	  dlls/w32skrnl/win32s16.c:
	w32skrnl: Win64 printf format warning fixes.

	* dlls/spoolss/Makefile.in, dlls/spoolss/spoolss_main.c:
	spoolss: Win64 printf format warning fixes.

	* dlls/query/Makefile.in, dlls/query/query_main.c:
	query: Win64 printf format warning fixes.

	* dlls/oleacc/Makefile.in, dlls/oleacc/main.c:
	oleacc: Win64 printf format warning fixes.

	* dlls/newdev/Makefile.in, dlls/newdev/main.c:
	newdev: Win64 printf format warning fixes.

	* dlls/nddeapi/Makefile.in, dlls/nddeapi/nddeapi.c:
	nddeapi: Win64 printf format warning fixes.

	* dlls/localspl/tests/Makefile.in, dlls/localspl/tests/localmon.c:
	localspl/tests: Win64 printf format warning fixes.

	* dlls/hhctrl.ocx/Makefile.in, dlls/hhctrl.ocx/hhctrl.c,
	  dlls/hhctrl.ocx/main.c:
	hhctrl.ocx: Win64 printf format warning fixes.

	* dlls/d3dx8/Makefile.in, dlls/d3dx8/d3dxbuffer.c:
	d3dx8: Win64 printf format warning fixes.

	* dlls/dinput8/Makefile.in, dlls/dinput8/dinput8_main.c:
	dinput8: Win64 printf format warning fixes.

	* dlls/cards/Makefile.in, dlls/cards/cards.c:
	cards: Win64 printf format warning fixes.

	* dlls/msvcrt/Makefile.in, dlls/msvcrt/cppexcept.c, dlls/msvcrt/except.c,
	  dlls/msvcrt/file.c, dlls/msvcrt/locale.c, dlls/msvcrt/main.c:
	msvcrt: Win64 printf format warning fixes.

2006-09-22  Elie Morisse <lachienne@wanadoo.fr>

	* dlls/ddraw/surface.c:
	ddraw: Don't destroy complex attached surfaces even if explicitely
	requested as they will be liquidated anyway when the root is
	destroyed.

2006-09-30  Marcus Meissner <marcus@jet.franken.de>

	* dlls/crypt32/oid.c, dlls/crypt32/store.c:
	crypt32: Include wine/port.h for strcasecmp.

2006-10-03  Marcus Meissner <marcus@jet.franken.de>

	* dlls/crypt32/tests/sip.c:
	crypt32/tests: Replace bad use of sprintf by 2 strcats.

	* dlls/ntdll/tests/exception.c:
	ntdll: More tests for exception handling.
	- Check if we really set the debug register.
	- Added unaligned access exception check.
	- Added single step exception check.

2006-10-03  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c:
	crypt32: Make it clearer where alg ids come from in
	CryptVerifyCertificateSignatureEx.

2006-10-03  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/tests/Makefile.in, dlls/wintrust/tests/register.c:
	wintrust: Win64 printf format warning fixes.

2006-10-01  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/thread.c, include/wine/server_protocol.h,
	  server/protocol.def, server/thread.c, server/trace.c:
	ntdll: Implemented AmILastThread information class for NtQueryInformationThread.

	* programs/winedbg/source.c:
	winedbg: Rewrote the file handling to use SearchPath instead of home grown
	version.

2006-09-30  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel32/comm.c, dlls/ntdll/serial.c:
	ntdll-kernel32: WaitCommEvent.
	- implemented IOCTL_SERIAL_WAIT_ON_MASK for DeviceIoControl
	on serial lines in ntdll
	- now using thread pool (instead of simple thread) for the
	background operations (this should help some high load
	situations)
	- used this to implement WaitCommEvent on top NtDll functions
	- in kernel32, removed now the no longer used termios/ioctls...
	for comm devices

2006-09-29  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	comctl32: Fix LVM_GETITEM/LVIF_STATE so it only returns the bits it
	has been asked for, and sets all the others to zero (with conformance
	test).

	* include/ntstatus.h:
	include: Add missing STATUS_CTX_ constants.

	* include/prsht.h:
	include: Add missing PSP_ constants.

	* dlls/oleaut32/tests/olefont.c:
	oleaut32: Remove unnecessary casts.

2006-09-28  James Hawkins <truiken@gmail.com>

	* dlls/msi/database.c, dlls/msi/tests/db.c, dlls/msi/tests/install.c:
	msi: Implement MsiDatabaseImport.

2006-10-03  Hans Leidekker <hans@it.vu.nl>

	* dlls/advapi32/Makefile.in, dlls/advapi32/advapi.c,
	  dlls/advapi32/crypt.c, dlls/advapi32/eventlog.c, dlls/advapi32/lsa.c,
	  dlls/advapi32/registry.c, dlls/advapi32/security.c,
	  dlls/advapi32/service.c:
	advapi32: Win64 printf format warning fixes.

2006-10-03  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Use I_Rpc{Allocate, Free} instead of Heap{Alloc, Free} as that
	the former are exported by rpcrt4 seemingly to allow callers of tower
	functions to free the allocated memory.

	* dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: RpcBindingCopy is implemented.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Don't use HEAP_ZERO_MEMORY when most of the fields will be initialised
	to non-zero values.

2006-10-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/win.c:
	user: Increase the time during which flush_events() waits for pending events.

2006-10-03  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/tests/sip.c:
	crypt32: Remove bogus tests.

2006-10-03  Francois Gouget <fgouget@free.fr>

	* dlls/shell32/tests/shelllink.c:
	shell32: Microsoft's EXP_DARWIN_LINK structure does not have a dbh
	field so cast it to DATABLOCK_HEADER to access the dwSignature
	field. Fixes the compilation with Visual C++ on Windows.

	* dlls/urlmon/file.c, dlls/urlmon/ftp.c, dlls/urlmon/http.c:
	urlmon: Fix spelling of the 'origin' parameter in the *Protocol_Seek() functions.

	* dlls/kernel32/thunk.c, dlls/ole32/tests/storage32.c,
	  dlls/shlwapi/path.c, tools/winapi/winapi_check_options.pm:
	Assorted spelling fixes.

	* dlls/kernel32/tests/path.c, dlls/ntdll/tests/info.c,
	  dlls/rsaenh/tests/rsaenh.c:
	Add missing '\n's to ok() calls.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Remove space before '\n'.

2006-10-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdll/tests/exception.c:
	ntdll: Make test_debug_regs() print the actual Dr7 value it got.

2006-10-03  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/winedos/Makefile.in, dlls/winedos/dma.c, dlls/winedos/dosaspi.c,
	  dlls/winedos/dosvm.c, dlls/winedos/int10.c, dlls/winedos/int13.c,
	  dlls/winedos/int1a.c, dlls/winedos/int21.c, dlls/winedos/int25.c,
	  dlls/winedos/int26.c, dlls/winedos/int2f.c, dlls/winedos/int31.c,
	  dlls/winedos/interrupts.c, dlls/winedos/ioports.c,
	  dlls/winedos/module.c, dlls/winedos/soundblaster.c,
	  dlls/winedos/vxd.c, dlls/winedos/xms.c:
	winedos: Win64 printf format warning fixes.

2006-10-03  Oleg Krylov <oleg.krylov@gmail.com>

	* dlls/user/cursoricon.c, include/winuser.h:
	user: Fix CopyImage function declaration.

2006-10-03  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comdlg32/filedlgbrowser.c:
	comdlg32: Load "Save" string from resources in filedlgbrowser.c.

2006-10-03  Alexandre Julliard <julliard@winehq.org>

	* Makefile.in:
	Makefile: Avoid trailing slash in find, it breaks tags on MacOS.

	* dlls/ntdll/file.c:
	ntdll: Added error mapping for ENXIO.

	* dlls/ntdll/directory.c, server/fd.c:
	ntdll: Implement FSCTL_DISMOUNT_VOLUME for MacOSX.

	* configure, configure.ac, programs/explorer/Makefile.in,
	  programs/explorer/desktop.c, programs/explorer/device.c,
	  programs/explorer/diskarb.c, programs/explorer/explorer_private.h,
	  programs/explorer/hal.c:
	explorer: Added dynamic drive support for MacOSX.

	* programs/explorer/device.c:
	explorer: Avoid repeated notifications on device removal.

	* programs/explorer/Makefile.in, programs/explorer/device.c,
	  programs/explorer/explorer_private.h, programs/explorer/hal.c:
	explorer: Split the device management to a separate file to make it usable
	independently of HAL support.

2006-10-02  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/info.c, programs/winedbg/tgt_active.c:
	winedbg: Fixed the auto mode.

2006-10-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/ws2_32/socket.c:
	ws2_32: Avoid retrieving the fd twice in WSAIoctl.

2006-10-02  Marcus Meissner <marcus@jet.franken.de>

	* dlls/ws2_32/socket.c:
	ws2_32: Implemented FIONBIO and FIONREAD in WSAIoctl.

	* dlls/ntdll/signal_i386.c:
	ntdll: Clear alignment check flag before entering exception handler.

2006-10-02  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/tests/cert.c:
	crypt32: Implement CryptSignAndEncodeCertificate.

2006-10-03  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/regedit/Bg.rc, programs/regedit/Cs.rc, programs/regedit/De.rc,
	  programs/regedit/En.rc, programs/regedit/Es.rc,
	  programs/regedit/Fr.rc, programs/regedit/Hu.rc,
	  programs/regedit/It.rc, programs/regedit/Ja.rc,
	  programs/regedit/Ko.rc, programs/regedit/Nl.rc,
	  programs/regedit/No.rc, programs/regedit/Pl.rc,
	  programs/regedit/Pt.rc, programs/regedit/Ru.rc,
	  programs/regedit/Si.rc, programs/regedit/Tr.rc,
	  programs/regedit/resource.h:
	regedit: Remove the unused IDD_DIALOG2.

	* programs/regedit/Bg.rc, programs/regedit/Cs.rc, programs/regedit/De.rc,
	  programs/regedit/En.rc, programs/regedit/Es.rc,
	  programs/regedit/Fr.rc, programs/regedit/Hu.rc,
	  programs/regedit/It.rc, programs/regedit/Ja.rc,
	  programs/regedit/Ko.rc, programs/regedit/Nl.rc,
	  programs/regedit/No.rc, programs/regedit/Pl.rc,
	  programs/regedit/Pt.rc, programs/regedit/Ru.rc,
	  programs/regedit/Si.rc, programs/regedit/Tr.rc,
	  programs/regedit/framewnd.c, programs/regedit/resource.h:
	regedit: Add option to export only a specified branch.

	* programs/regedit/framewnd.c:
	regedit: Some import/export dialogs code cleanup.

2006-10-03  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/cmdlgtst/Fr.rc:
	cmdlgtst: Updated French translation.

	* dlls/crypt32/crypt32.rc, dlls/crypt32/crypt32_Fr.rc:
	crypt32: Initial French translation.

2006-10-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user/cursoricon.c, dlls/user/exticon.c, dlls/user/spy.c:
	user: Cast-qual warnings fix.

2006-10-02  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/sip.c:
	crypt32/tests: Win64 printf format warning fixes.

	* dlls/msi/appsearch.c, dlls/msi/tests/package.c:
	msi: Implement msidbLocatorTypeFileName in RegLocator searches.

2006-10-02  Michael Stefaniuc <mstefani@redhat.de>

	* programs/winemenubuilder/Makefile.in,
	  programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Win64 printf format warning fixes.

	* programs/wineconsole/Makefile.in, programs/wineconsole/registry.c,
	  programs/wineconsole/user.c:
	wineconsole: Win64 printf format warning fixes.

	* programs/rpcss/Makefile.in, programs/rpcss/np_server.c:
	rpcss: Win64 printf format warning fixes.

	* programs/oleview/Makefile.in, programs/oleview/typelib.c:
	oleview: Win64 'incompatible pointer type' warning fix.

	* programs/icinfo/Makefile.in, programs/icinfo/icinfo.c:
	icinfo: Win64 printf format warning fixes.

	* programs/eject/Makefile.in, programs/eject/eject.c:
	eject: Win64 printf format warning fixes.

	* programs/cmdlgtst/Makefile.in, programs/cmdlgtst/cmdlgtst.c:
	cmdlgtst: Win64 printf format warning fixes.

	* programs/winhelp/Makefile.in, programs/winhelp/hlpfile.c,
	  programs/winhelp/macro.c, programs/winhelp/winhelp.c:
	winhelp: Win64 printf format warning fixes.

	* programs/winecfg/Makefile.in, programs/winecfg/appdefaults.c,
	  programs/winecfg/drive.c, programs/winecfg/winecfg.c:
	winecfg: Win64 printf format warning fixes.

	* programs/wineboot/Makefile.in, programs/wineboot/shutdown.c,
	  programs/wineboot/wineboot.c:
	wineboot: Win64 printf format warning fixes.

2006-10-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/tests/webbrowser.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Silence common invalid QueryInterface FIXMEs.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Silence common invalid QueryInterface FIXME.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl, dlls/mshtml/persist.c:
	mshtml: Added begining implementation of IPersistStreamInit::Save.

	* dlls/mshtml/nsembed.c:
	mshtml: Code cleanup.

2006-10-02  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Report the correct number of available 4-component float vectors
	for GLSL.

	* dlls/wined3d/pixelshader.c:
	wined3d: Explicitly enable the GL_ARB_draw_buffers extension in GLSL shaders.

2006-10-02  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Fix ITypeInfo::GetFuncDesc to return the correct information for
	dual dispinterfaces.

	* dlls/oleaut32/typelib.c:
	oleaut32: Make ITypeInfo::GetDocumentation work for functions/variables in
	inherited interfaces.

2006-10-02  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/advapi32/tests/registry.c:
	advapi32: Make sure it's a real cleanup.

2006-10-02  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/regedit/Bg.rc, programs/regedit/Cs.rc, programs/regedit/De.rc,
	  programs/regedit/Es.rc, programs/regedit/Fr.rc,
	  programs/regedit/Hu.rc, programs/regedit/It.rc,
	  programs/regedit/Ja.rc, programs/regedit/Pt.rc,
	  programs/regedit/Ru.rc, programs/regedit/Si.rc:
	regedit: Fix some translated resources errors.

2006-10-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/winecfg/Ru.rc:
	winecfg: Fix a typo in Russian translation.

2006-09-28  Peter Oberndorfer <kumbayo84@arcor.de>

	* programs/winedbg/tgt_active.c:
	winedbg: Don't try to read to invalid memory if winedbg does not find the thread.

	* dlls/ntdll/tests/info.c:
	ntdll: Add a test for NtReadVirtualMemory.

2006-09-29  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/kernel32/tests/path.c:
	kernel32: Add 2 simple tests for GetLongPathNameW.

	* dlls/kernel32/path.c:
	kernel32: Print an error instead of crashing in GetLongPathNameW if shortpath=0.

2006-09-29  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/Makefile.in, dlls/crypt32/tests/base64.c,
	  dlls/crypt32/tests/cert.c, dlls/crypt32/tests/chain.c,
	  dlls/crypt32/tests/crl.c, dlls/crypt32/tests/encode.c,
	  dlls/crypt32/tests/main.c, dlls/crypt32/tests/oid.c,
	  dlls/crypt32/tests/protectdata.c, dlls/crypt32/tests/store.c,
	  dlls/crypt32/tests/str.c:
	crypt32/tests: Win64 printf format warning fixes.

2006-09-28  Juan Lang <juan_lang@yahoo.com>

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Ignore VT_ERROR arguments to WebBrowser_Navigate2.

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Return S_OK from WebBrowser_put_RegisterAsDropTarget.

2006-09-30  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/Makefile.in, dlls/wined3d/arb_program_shader.c,
	  dlls/wined3d/baseshader.c, dlls/wined3d/basetexture.c,
	  dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/indexbuffer.c,
	  dlls/wined3d/palette.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/query.c, dlls/wined3d/resource.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/texture.c, dlls/wined3d/utils.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c, dlls/wined3d/wined3d_main.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Win64 printf fixes.

2006-09-30  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/Makefile.in, dlls/wldap32/bind.c, dlls/wldap32/dn.c,
	  dlls/wldap32/error.c, dlls/wldap32/extended.c, dlls/wldap32/init.c,
	  dlls/wldap32/main.c, dlls/wldap32/misc.c, dlls/wldap32/page.c,
	  dlls/wldap32/parse.c, dlls/wldap32/search.c:
	wldap32: Win64 printf format warning fixes.

	* dlls/mscms/Makefile.in, dlls/mscms/mscms_main.c,
	  dlls/mscms/mscms_priv.h, dlls/mscms/profile.c, dlls/mscms/stub.c,
	  dlls/mscms/transform.c:
	mscms: Win64 printf format warning fixes.

	* dlls/dnsapi/Makefile.in, dlls/dnsapi/main.c, dlls/dnsapi/query.c:
	dnsapi: Win64 printf format warning fixes.

2006-09-30  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/user/Makefile.in, dlls/user/bidi16.c, dlls/user/class.c,
	  dlls/user/clipboard.c, dlls/user/combo.c, dlls/user/comm16.c,
	  dlls/user/cursoricon.c, dlls/user/dde_client.c, dlls/user/dde_misc.c,
	  dlls/user/dde_server.c, dlls/user/defwnd.c, dlls/user/dialog.c,
	  dlls/user/dialog16.c, dlls/user/driver.c, dlls/user/driver16.c,
	  dlls/user/edit.c, dlls/user/exticon.c, dlls/user/hook.c,
	  dlls/user/input.c, dlls/user/listbox.c, dlls/user/mdi.c,
	  dlls/user/menu.c, dlls/user/message.c, dlls/user/misc.c,
	  dlls/user/nonclient.c, dlls/user/painting.c, dlls/user/resource.c,
	  dlls/user/scroll.c, dlls/user/spy.c, dlls/user/static.c,
	  dlls/user/sysparams.c, dlls/user/uitools.c, dlls/user/user16.c,
	  dlls/user/win.c, dlls/user/winhelp.c, dlls/user/winpos.c,
	  dlls/user/winproc.c, dlls/user/winstation.c:
	user: Win64 printf format warning fixes.

2006-09-29  Benjamin Arai <me@benjaminarai.com>

	* Makefile.in, configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/resutils/Makefile.in, dlls/resutils/resutils.c,
	  dlls/resutils/resutils.spec:
	resutils: Implements stub dll for resutils.dll.

2006-09-30  Marcus Meissner <marcus@jet.franken.de>

	* dlls/ntdll/tests/exception.c:
	ntdll: Added debug registers test case.

2006-09-18  Marcus Meissner <marcus@jet.franken.de>

	* dlls/mswsock/mswsock.c:
	mswsock: More debug output in AcceptEx().

2006-10-02  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/gdi/freetype.c:
	gdi32: Improve get_nearest_charset().

2006-10-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/tapi32/line.c:
	tapi32: Cast-qual warnings fix.

2006-10-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/win.c:
	user/tests: Flush events before running mouse tests.

2006-10-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Add a comment to ioctlsocket about 'bogus' ioctl 0x667e.

	* dlls/ws2_32/socket.c, include/winsock.h:
	ws2_32: Use a symbolic name instead of hand-made value.

2006-10-01  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/wined3d_private.h:
	wined3d: Remove unused field in shader opcode_arg.

2006-09-30  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/devenum/devenum.rc, dlls/winspool.drv/No.rc,
	  dlls/winspool.drv/winspool.rc, programs/cmdlgtst/No.rc,
	  programs/regedit/No.rc:
	Updated Norwegian Bokmål translations.

2006-10-02  Alexandre Julliard <julliard@winehq.org>

	* include/winsock.h:
	winsock: Make sure to include sys/types.h in all cases.

2006-09-30  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Print each 64-bit integers as two 32 bit integers.

2006-10-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shell32/shlfileop.c:
	shell32: Another cast-qual warning fix.

2006-09-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shell32/shellord.c, dlls/shell32/shellpath.c,
	  dlls/shell32/shfldr_fs.c, dlls/shell32/shlexec.c:
	shell32: Cast-qual warnings fix.

2006-09-29  Karsten Elfenbein <kelfe@gmx.de>

	* dlls/rsaenh/tests/rsaenh.c:
	rsaenh/tests: import & export of a plaintext public key + algID check.

2006-09-29  Michael Stefaniuc <mstefani@redhat.de>

	* tools/winedump/Makefile.in, tools/winedump/debug.c, tools/winedump/le.c,
	  tools/winedump/lnk.c, tools/winedump/minidump.c, tools/winedump/ne.c,
	  tools/winedump/pe.c:
	winedump: Win64 printf format warning fixes.

	* tools/wrc/Makefile.in, tools/wrc/dumpres.c, tools/wrc/newstruc.c:
	wrc: Win64 printf format warning fixes.

	* server/Makefile.in, server/registry.c, server/trace.c:
	server: Win64 printf format warning fixes.

2006-09-29  Jason Green <jave27@gmail.com>

	* dlls/user/input.c, dlls/user/user32.spec:
	user32: Stub implementation of BlockInput.

2006-09-29  Francois Gouget <fgouget@free.fr>

	* dlls/d3d9/tests/stateblock.c:
	d3d9: Tweak a buffer declaration to fix the compilation with Visual C++.

	* dlls/riched20/tests/editor.c:
	riched20: Tweak a buffer declaration to fix the compilation with Visual C++.

	* dlls/rpcrt4/tests/cstub.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Don't return void values. This fixes Visual C++ warnings.

	* dlls/ddraw/tests/ddrawmodes.c:
	ddraw: Only perform the screen resolution changing tests in interactive mode.

	* dlls/oleaut32/tests/usrmarshal.c:
	oleaut32: Fixed compilation in the nameless union case.

	* dlls/comctl32/tests/toolbar.c, dlls/rpcrt4/tests/cstub.c:
	Add missing '\n's to ok() calls.

	* dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c:
	dsound: Don't use state.buffer_size before it has been initialized.

	* dlls/mshtml/navigate.c, dlls/mshtml/persist.c,
	  dlls/mshtml/tests/htmldoc.c, dlls/shdocvw/navigate.c,
	  dlls/urlmon/binding.c, include/urlmon.idl:
	urlmon: Fix the case of the BINDINFO.cbstgmedData field. Fixes the htmldoc
	test compilation on Windows.

	* dlls/ddraw/tests/d3d.c:
	ddraw: Fix comparefloat() so it compiles with Visual C++ when given a negative
	value.

	* tools/winapi/msvcmaker:
	msvcmaker: The msvcrt tests need '..' in the include path.

	* dlls/ole32/tests/moniker.c:
	ole32: Fix invalid macro usage.

	* include/wincrypt.h:
	wincrypt: Fix the CERT_TRUST_PUB_AUTHENTICODE_FLAGS_VALUE_NAME declaration in
	the MSVC case.

	* include/security.h:
	secur32: Only include secext.h when asked to.

	* dlls/mshtml/tests/htmldoc.c, dlls/ole32/tests/compobj.c,
	  dlls/ole32/tests/marshal.c, dlls/shdocvw/tests/webbrowser.c,
	  dlls/shell32/tests/shlfolder.c, dlls/urlmon/tests/misc.c,
	  dlls/urlmon/tests/protocol.c, dlls/urlmon/tests/url.c,
	  include/rpcndr.h:
	Fix rpcndr.h so it takes CONST_VTABLE into account.
	Define CONST_VTABLE in the tests that need it. This fixes many Visual C++
	warnings.

	* tools/widl/header.c:
	widl: Use CONST_VTBL to declare lpVtbl.

2006-09-28  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/header.c, dlls/comctl32/listview.c,
	  dlls/comctl32/tests/listview.c, dlls/crypt32/tests/sip.c,
	  dlls/oleaut32/ungif.c, dlls/setupapi/tests/devinst.c,
	  dlls/wined3d/surface.c, dlls/wined3d/vertexbuffer.c,
	  dlls/winex11.drv/opengl.c:
	Assorted spelling fixes.

2006-09-29  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/avicap32/avicap32_main.c, dlls/compstui/compstui_main.c,
	  dlls/crtdll/crtdll_main.c, dlls/cryptdll/cryptdll.c,
	  dlls/cryptnet/cryptnet_main.c, dlls/dpnhpast/main.c,
	  dlls/gphoto2.ds/gphoto2_main.c, dlls/hlink/tests/hlink.c,
	  dlls/localspl/localspl_main.c, dlls/mmdevldr.vxd/mmdevldr.c,
	  dlls/monodebg.vxd/monodebg.c, dlls/mprapi/mprapi.c,
	  dlls/msisys.ocx/msisys.c, dlls/msnet32/msnet_main.c,
	  dlls/msvcrtd/tests/debug.c, dlls/ntdsapi/ntdsapi.c,
	  dlls/odbccp32/odbccp32.c, dlls/oledlg/oledlg_main.c,
	  dlls/sane.ds/sane_main.c, dlls/sensapi/sensapi.c,
	  dlls/snmpapi/main.c, dlls/svrapi/svrapi_main.c,
	  dlls/twain_32/twain32_main.c, dlls/userenv/userenv_main.c,
	  dlls/vdhcp.vxd/vdhcp.c, dlls/vnbt.vxd/vnbt.c,
	  dlls/vnetbios.vxd/vnetbios.c, dlls/vtdapi.vxd/vtdapi.c,
	  dlls/winmm/joystick/joystick.c, programs/expand/expand.c,
	  programs/explorer/desktop.c, programs/msiexec/msiexec.c,
	  programs/uninstaller/main.c, tools/widl/hash.c:
	"One liners" printf format warning fixes for the migration of DWORD/LONG/ULONG
	from long to int.

	* include/wine/debug.h, include/wine/test.h:
	debug.h, test.h: Temporary add ifdefs around some printfs to avoid format.

	* include/windef.h, include/winnt.h:
	include: Make DWORD/LONG/ULONG an int to use the same type in Win32 and Win64.

	* dlls/activeds/Makefile.in, dlls/advapi32/Makefile.in,
	  dlls/advapi32/tests/Makefile.in, dlls/advpack/Makefile.in,
	  dlls/advpack/tests/Makefile.in, dlls/amstream/Makefile.in,
	  dlls/atl/Makefile.in, dlls/avifil32/Makefile.in,
	  dlls/cabinet/tests/Makefile.in, dlls/cards/Makefile.in,
	  dlls/cfgmgr32/Makefile.in, dlls/comcat/Makefile.in,
	  dlls/comcat/tests/Makefile.in, dlls/comctl32/Makefile.in,
	  dlls/comctl32/tests/Makefile.in, dlls/comdlg32/Makefile.in,
	  dlls/comdlg32/tests/Makefile.in, dlls/crypt32/Makefile.in,
	  dlls/crypt32/tests/Makefile.in, dlls/d3d8/Makefile.in,
	  dlls/d3d8/tests/Makefile.in, dlls/d3d9/Makefile.in,
	  dlls/d3d9/tests/Makefile.in, dlls/d3dx8/Makefile.in,
	  dlls/d3dxof/Makefile.in, dlls/dbghelp/Makefile.in,
	  dlls/ddraw/Makefile.in, dlls/ddraw/tests/Makefile.in,
	  dlls/devenum/Makefile.in, dlls/dinput/Makefile.in,
	  dlls/dinput/tests/Makefile.in, dlls/dinput8/Makefile.in,
	  dlls/dmband/Makefile.in, dlls/dmcompos/Makefile.in,
	  dlls/dmime/Makefile.in, dlls/dmloader/Makefile.in,
	  dlls/dmscript/Makefile.in, dlls/dmstyle/Makefile.in,
	  dlls/dmsynth/Makefile.in, dlls/dmusic/Makefile.in,
	  dlls/dnsapi/Makefile.in, dlls/dplayx/Makefile.in,
	  dlls/dpnet/Makefile.in, dlls/dsound/Makefile.in,
	  dlls/dsound/tests/Makefile.in, dlls/dswave/Makefile.in,
	  dlls/dxdiagn/Makefile.in, dlls/dxerr8/Makefile.in,
	  dlls/dxerr9/Makefile.in, dlls/gdi/Makefile.in,
	  dlls/gdi/tests/Makefile.in, dlls/hhctrl.ocx/Makefile.in,
	  dlls/hlink/Makefile.in, dlls/iccvid/Makefile.in,
	  dlls/ifsmgr.vxd/Makefile.in, dlls/imaadp32.acm/Makefile.in,
	  dlls/imagehlp/Makefile.in, dlls/imm32/Makefile.in,
	  dlls/infosoft/Makefile.in, dlls/iphlpapi/Makefile.in,
	  dlls/iphlpapi/tests/Makefile.in, dlls/itss/Makefile.in,
	  dlls/kernel32/Makefile.in, dlls/kernel32/tests/Makefile.in,
	  dlls/localspl/tests/Makefile.in, dlls/lz32/tests/Makefile.in,
	  dlls/mapi32/Makefile.in, dlls/mapi32/tests/Makefile.in,
	  dlls/mciavi32/Makefile.in, dlls/mcicda/Makefile.in,
	  dlls/mciseq/Makefile.in, dlls/mciwave/Makefile.in,
	  dlls/midimap/Makefile.in, dlls/mlang/Makefile.in,
	  dlls/mlang/tests/Makefile.in, dlls/mpr/Makefile.in,
	  dlls/msacm32.drv/Makefile.in, dlls/msacm32/Makefile.in,
	  dlls/msacm32/tests/Makefile.in, dlls/msadp32.acm/Makefile.in,
	  dlls/mscms/Makefile.in, dlls/mscms/tests/Makefile.in,
	  dlls/msdmo/Makefile.in, dlls/msg711.acm/Makefile.in,
	  dlls/mshtml/Makefile.in, dlls/mshtml/tests/Makefile.in,
	  dlls/msi/Makefile.in, dlls/msi/tests/Makefile.in,
	  dlls/msrle32/Makefile.in, dlls/msvcrt/Makefile.in,
	  dlls/msvcrt/tests/Makefile.in, dlls/msvfw32/Makefile.in,
	  dlls/msvidc32/Makefile.in, dlls/msxml3/Makefile.in,
	  dlls/msxml3/tests/Makefile.in, dlls/nddeapi/Makefile.in,
	  dlls/netapi32/Makefile.in, dlls/netapi32/tests/Makefile.in,
	  dlls/newdev/Makefile.in, dlls/ntdll/Makefile.in,
	  dlls/ntdll/tests/Makefile.in, dlls/odbc32/Makefile.in,
	  dlls/ole32/Makefile.in, dlls/ole32/tests/Makefile.in,
	  dlls/oleacc/Makefile.in, dlls/oleaut32/Makefile.in,
	  dlls/oleaut32/tests/Makefile.in, dlls/olecli32/Makefile.in,
	  dlls/olesvr32/Makefile.in, dlls/opengl32/Makefile.in,
	  dlls/powrprof/Makefile.in, dlls/psapi/Makefile.in,
	  dlls/psapi/tests/Makefile.in, dlls/pstorec/Makefile.in,
	  dlls/qcap/Makefile.in, dlls/quartz/Makefile.in,
	  dlls/quartz/tests/Makefile.in, dlls/query/Makefile.in,
	  dlls/rasapi32/Makefile.in, dlls/riched20/Makefile.in,
	  dlls/riched20/tests/Makefile.in, dlls/rpcrt4/Makefile.in,
	  dlls/rpcrt4/tests/Makefile.in, dlls/rsaenh/Makefile.in,
	  dlls/rsaenh/tests/Makefile.in, dlls/secur32/Makefile.in,
	  dlls/secur32/tests/Makefile.in, dlls/serialui/Makefile.in,
	  dlls/setupapi/Makefile.in, dlls/setupapi/tests/Makefile.in,
	  dlls/shdocvw/Makefile.in, dlls/shdocvw/tests/Makefile.in,
	  dlls/shell32/Makefile.in, dlls/shell32/tests/Makefile.in,
	  dlls/shlwapi/Makefile.in, dlls/shlwapi/tests/Makefile.in,
	  dlls/spoolss/Makefile.in, dlls/tapi32/Makefile.in,
	  dlls/urlmon/Makefile.in, dlls/urlmon/tests/Makefile.in,
	  dlls/user/Makefile.in, dlls/user/tests/Makefile.in,
	  dlls/usp10/Makefile.in, dlls/usp10/tests/Makefile.in,
	  dlls/uxtheme/Makefile.in, dlls/uxtheme/tests/Makefile.in,
	  dlls/version/Makefile.in, dlls/version/tests/Makefile.in,
	  dlls/vmm.vxd/Makefile.in, dlls/vwin32.vxd/Makefile.in,
	  dlls/w32skrnl/Makefile.in, dlls/wined3d/Makefile.in,
	  dlls/winedos/Makefile.in, dlls/winemp3.acm/Makefile.in,
	  dlls/wineps.drv/Makefile.in, dlls/winex11.drv/Makefile.in,
	  dlls/wininet/Makefile.in, dlls/wininet/tests/Makefile.in,
	  dlls/winmm/Makefile.in, dlls/winmm/tests/Makefile.in,
	  dlls/winmm/winealsa/Makefile.in, dlls/winmm/winearts/Makefile.in,
	  dlls/winmm/wineaudioio/Makefile.in,
	  dlls/winmm/winecoreaudio/Makefile.in, dlls/winmm/wineesd/Makefile.in,
	  dlls/winmm/winejack/Makefile.in, dlls/winmm/winenas/Makefile.in,
	  dlls/winmm/wineoss/Makefile.in, dlls/winspool.drv/Makefile.in,
	  dlls/winspool.drv/tests/Makefile.in, dlls/wintab32/Makefile.in,
	  dlls/wintrust/Makefile.in, dlls/wintrust/tests/Makefile.in,
	  dlls/wldap32/Makefile.in, dlls/wnaspi32/Makefile.in,
	  dlls/ws2_32/Makefile.in, dlls/ws2_32/tests/Makefile.in,
	  dlls/wsock32/Makefile.in, dlls/wtsapi32/Makefile.in,
	  programs/cmdlgtst/Makefile.in, programs/eject/Makefile.in,
	  programs/icinfo/Makefile.in, programs/oleview/Makefile.in,
	  programs/rpcss/Makefile.in, programs/wineboot/Makefile.in,
	  programs/winecfg/Makefile.in, programs/wineconsole/Makefile.in,
	  programs/winedbg/Makefile.in, programs/winemenubuilder/Makefile.in,
	  programs/winhelp/Makefile.in, server/Makefile.in,
	  tools/winedump/Makefile.in, tools/wrc/Makefile.in:
	Add a WINE_NO_LONG_INT define to many makefiles to ease the transition of
	DWORD/LONG/ULONG from long to int.

2006-09-28  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c, dlls/msi/events.c, dlls/msi/msipriv.h,
	  dlls/msi/preview.c:
	msi: Return to the parent dialog when the argument to the EndDialog event
	is Return.

2006-09-28  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shell32/shelllink.c:
	shell32: Cast-qual warnings fix.

	* dlls/shell32/shell32_main.c:
	shell32: Cast-qual warnings fix.

	* dlls/shell32/pidl.c, dlls/shell32/regsvr.c:
	shell32: Cast-qual warnings fix.

	* dlls/shell32/brsfolder.c:
	shell32: Cast-qual warnings fix.

2006-09-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fix typo that confuses winapi_check.

2006-09-28  Juan Lang <juan_lang@yahoo.com>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Don't deadlock if GL init fails.

2006-09-28  Detlef Riekenberg <wine.dev@web.de>

	* tools/winedump/winedump.man.in:
	winedump: Remove the shell script reference from the man-page.

2006-09-28  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Small fix in TOOLBAR_StyleChanged.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Set correcly hwndTrack in TrackMouseEvent call.

	* dlls/msvfw32/msvfw32_Pl.rc, dlls/msvfw32/rsrc.rc:
	msvfw32: Add Polish translation.

	* dlls/gphoto2.ds/gphoto2_En.rc, dlls/gphoto2.ds/gphoto2_Fr.rc,
	  dlls/gphoto2.ds/gphoto2_Ko.rc, dlls/gphoto2.ds/gphoto2_Nl.rc,
	  dlls/gphoto2.ds/gphoto2_No.rc:
	gphoto2.ds: Use SS_CENTER to center a dialog string.

	* dlls/gphoto2.ds/gphoto2_Pl.rc, dlls/gphoto2.ds/rsrc.rc:
	gphoto2.ds: Add Polish translation.

	* dlls/sane.ds/sane_De.rc, dlls/sane.ds/sane_En.rc,
	  dlls/sane.ds/sane_Fi.rc, dlls/sane.ds/sane_Fr.rc,
	  dlls/sane.ds/sane_Ko.rc, dlls/sane.ds/sane_Nl.rc,
	  dlls/sane.ds/sane_No.rc:
	sane.ds: Use SS_CENTER to center a dialog string.

	* dlls/sane.ds/rsrc.rc, dlls/sane.ds/sane_Pl.rc:
	sane.ds: Add Polish translation.

2006-09-28  Juan Lang <juan_lang@yahoo.com>

	* include/wincrypt.h:
	wincrypt.h: Fix a typo.

	* dlls/rsaenh/implglue.c, dlls/rsaenh/implglue.h, dlls/rsaenh/rsaenh.c:
	rsaenh: Correct signature checking.
	- pass desired key to encrypt_block_impl
	- don't change the alg id of imported keys
	- add a few traces

2006-09-28  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/sip.c:
	crypt32: Added some CryptSIP stub implementations.

2006-09-28  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Add a stub implementation and a test for ScriptLayout.

2006-09-28  Alexandre Julliard <julliard@winehq.org>

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

----------------------------------------------------------------
2006-09-22  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: StgOpenStorage on non-existent file should create it (with test).

2006-09-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shlwapi/string.c:
	shlwapi: Add size parameters to function that takes array arguments.

2006-09-27  Thomas Weidenmueller <thomas@reactsoft.com>

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Fix RpcMgmtSetServerStackSize prototype.

2006-09-28  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/tests/sip.c:
	crypt32: A small test to verify when to write function pointers.

2006-09-28  Detlef Riekenberg <wine.dev@web.de>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/localspl/tests/Makefile.in, dlls/localspl/tests/localmon.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	localspl/tests: Add initial test.

2006-09-27  Benjamin Arai <me@benjaminarai.com>

	* Makefile.in, configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/clusapi/Makefile.in, dlls/clusapi/clusapi.c,
	  dlls/clusapi/clusapi.spec:
	clusapi: Implement stub dll for clusapi.

2006-09-27  James Hawkins <truiken@gmail.com>

	* dlls/msi/helpers.c, dlls/msi/tests/package.c:
	msi: Follow state resolution rules when a feature parent saves a component.

	* dlls/msi/helpers.c, dlls/msi/tests/package.c:
	msi: A feature state of INSTALLSTATE_ABSENT translates into a component state
	of INSTALLSTATE_UNKNOWN.

2006-09-27  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/tests/cert.c:
	crypt32: Implement CertGetPublicKeyLength.

2006-09-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/freetype.c, dlls/gdi/gdi_private.h:
	gdi32: Make GdiFont a proper C structure, with GdiFont* being a pointer.

2006-09-27  Marcus Meissner <marcus@jet.franken.de>

	* dlls/ntdll/signal_i386.c:
	ntdll: Align stack to 4 bytes.

2006-09-27  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/Makefile.in, dlls/localspl/localmon.c,
	  dlls/localspl/localspl_main.c:
	localspl: Start implementation of InitializePrintMonitor.

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

	* programs/regedit/Ko.rc:
	regedit: Updated Korean Resource.

	* dlls/winmm/winmm_Ko.rc:
	winmm: Updated Korean resource.

2006-09-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Tell gl about the surface alignment.

2006-09-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shdocvw/regsvr.c:
	shdocvw: Cast-qual warnings fix.

	* dlls/secur32/secur32.c:
	secur32: Cast-qual warnings fix.

2006-09-27  Huw Davies <huw@codeweavers.com>

	* dlls/ole32/rpc.c:
	ole32: Don't return from CoRegisterClassObject until we have created the
	named pipe.
	Also don't fail if the client connects to the pipe between CreateNamedPipe
	and ConnectNamedPipe.

2006-09-27  Robert Shearman <rob@codeweavers.com>

	* include/objidl.idl:
	include: Add types to objidl.idl used by COM contexts.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Make sure to free the allocated vtable when the tmarshal proxy
	is released.

	* dlls/ole32/stg_stream.c:
	ole32: Check the return value of IStream_SetSize so as to not blindly continue
	on and possibly corrupt the structured storage file.

	* dlls/ntdll/signal_i386.c:
	ntdll: Avoid crashing in check_atl_thunk if an execution exception was raised
	with a bad address.

	* dlls/ntdll/virtual.c:
	ntdll: NtAllocateVirtual with type of MEM_WRITE_WATCH fails with
	STATUS_NOT_SUPPORTED on Win2000 instead of STATUS_INVALID_PARAMETER.

	* include/winnt.h:
	include: Add recently added PSDK VM flags to winnt.h.

2006-09-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/font.c, dlls/gdi/freetype.c, dlls/gdi/tests/font.c:
	gdi32: Modify kerning scaling algorithm to the one which appears to better
	match what Windows does.

2006-09-27  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/olecmd.c, dlls/mshtml/persist.c, dlls/mshtml/task.c,
	  dlls/mshtml/tests/htmldoc.c:
	mshtml: Added get_readyState implementation.

	* dlls/mshtml/Bg.rc, dlls/mshtml/De.rc, dlls/mshtml/En.rc,
	  dlls/mshtml/Fi.rc, dlls/mshtml/Fr.rc, dlls/mshtml/Hu.rc,
	  dlls/mshtml/Ko.rc, dlls/mshtml/Nl.rc, dlls/mshtml/No.rc,
	  dlls/mshtml/Sv.rc, dlls/mshtml/Tr.rc, dlls/mshtml/resource.h,
	  dlls/mshtml/rsrc.rc:
	mshtml: Remove conflicts between resource.h and mshtmcid.h.

2006-09-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/ole32/tests/hglobalstream.c:
	ole32/tests: Avoid using sizeof in a trace.

	* dlls/d3d9/tests/stateblock.c:
	d3d9/tests: Don't test texture states beyond the supported maximum.

2006-09-26  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/resources.h, dlls/comctl32/tests/rsrc.rc,
	  dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Test and fix TB_ADDSTRING from resource.

2006-09-25  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/device.c:
	wined3d: Fix typo in ResourceReleased.

2006-09-27  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/sip.c, dlls/crypt32/tests/sip.c:
	crypt32: Partly implement CryptSIPRetrieveSubjectGuid.

2006-09-27  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Fix some typos in error messages.

2006-09-27  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Read GL info and load constants into the same device.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/device.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move device pointer into the BaseShader class.

2006-09-27  Juan Lang <juan_lang@yahoo.com>

	* dlls/netapi32/ds.c, dlls/netapi32/netapi32.spec, include/dsgetdc.h:
	netapi32: Add stubs for DsGetDcNameW and DsGetSiteNameW.

	* include/wintrust.h:
	wintrust.h: Remove duplicate definitions.  Spotted by Paul Vriens.

2006-09-27  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/tests/sip.c:
	crypt32: Another CryptSIPLoad test.

	* dlls/wintrust/crypt.c, dlls/wintrust/wintrust.spec:
	wintrust: Added some CryptSIP stub implementations.

	* include/mssip.h:
	wintrust: Fix function prototype.

2006-09-27  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/clock/Fr.rc:
	clock: French translation improvements.

	* programs/notepad/Fr.rc:
	notepad: French translation improvements.

	* programs/progman/Fr.rc:
	progman: French translation improvements.

	* programs/winefile/Fr.rc:
	winefile: French translation improvements.

	* programs/taskmgr/Fr.rc:
	taskmgr: French translation improvements.

	* programs/regedit/Fr.rc:
	regedit: French translation improvements.

2006-09-27  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/view/view.c:
	view: Reset the image left-top corner to the window left-top corner after a
	Scale to Window.

	* programs/view/Cs.rc, programs/view/De.rc, programs/view/En.rc,
	  programs/view/Eo.rc, programs/view/Es.rc, programs/view/Fr.rc,
	  programs/view/It.rc, programs/view/Ko.rc, programs/view/Nl.rc,
	  programs/view/No.rc, programs/view/Pl.rc, programs/view/Pt.rc,
	  programs/view/Ru.rc, programs/view/Si.rc, programs/view/Tr.rc,
	  programs/view/resource.h, programs/view/view.c:
	view: Remove the Info > Hello menu item.

	* programs/view/Cs.rc, programs/view/De.rc, programs/view/En.rc,
	  programs/view/Eo.rc, programs/view/Es.rc, programs/view/Fr.rc,
	  programs/view/It.rc, programs/view/Ko.rc, programs/view/Nl.rc,
	  programs/view/No.rc, programs/view/Pl.rc, programs/view/Pt.rc,
	  programs/view/Ru.rc, programs/view/Si.rc, programs/view/Tr.rc,
	  programs/view/init.c, programs/view/resource.h:
	view: Remove IDS_APPNAME from resources.

	* programs/view/Pl.rc, programs/view/viewrc.rc:
	view: Add Polish translation.

	* programs/regedit/En.rc:
	regedit: Fix the English (Neutral) menu.

2006-09-26  Vitaliy Margolen <wine-patch@kievinfo.com>

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

2006-09-26  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/texture.c, dlls/wined3d/utils.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c:
	wined3d: Comparing BOOLs against FALSE is redundant.

	* dlls/wined3d/directx.c:
	wined3d: Add a comment to clarify the point of max_sampler_stages.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_main.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_gl.h:
	wined3d: Add support for native NPOT textures.

	* dlls/wined3d/wined3d_main.c, programs/winecfg/x11drvdlg.c:
	wined3d: Enable pixel shaders by default.

	* dlls/wined3d/wined3d_main.c, dlls/wined3d/wined3d_private.h:
	wined3d: Fix the default values for wined3d_settings.

	* dlls/wined3d/vertexshader.c:
	wined3d: Don't overwrite the position y offset in ARB vertex programs.

	* dlls/wined3d/device.c:
	wined3d: Cleanup ActiveRender some more.

	* dlls/wined3d/device.c:
	wined3d: Render upside down when rendering offscreen, even if the backbuffer
	is used to render to.

	* dlls/wined3d/device.c:
	wined3d: Show the MESSAGE in device_find_fbconfigs() only once.

2006-09-26  Juan Lang <juan_lang@yahoo.com>

	* include/wintrust.h:
	wintrust.h: Add missing defines.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Encode/decode authority key ids.

2006-09-27  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

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

2006-09-26  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Cast-qual warnings fix.

	* dlls/rsaenh/mpi.c, dlls/rsaenh/rsa.c, dlls/rsaenh/tomcrypt.h:
	rsaenh: Cast-qual warnings fix.

2006-09-26  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/uninstaller/Pl.rc, programs/uninstaller/rsrc.rc:
	uninstaller: Add Polish translation.

	* dlls/winmm/winmm_En.rc:
	winmm: Use English (US) instead of English (Neutral) for resources.

	* dlls/comctl32/comctl_Pl.rc:
	comctl32: Update Polish translation.

	* dlls/msrle32/msrle32.c, dlls/msrle32/msrle_Cs.rc,
	  dlls/msrle32/msrle_Hu.rc:
	msrle32: Show correctly the authors surname in some non-latin1 languages.

	* dlls/iccvid/iccvid_Pl.rc, dlls/iccvid/rsrc.rc, dlls/msrle32/msrle_Pl.rc,
	  dlls/msrle32/rsrc.rc, dlls/msvidc32/msvidc32_Pl.rc,
	  dlls/msvidc32/rsrc.rc:
	video codecs: add Polish translation.

2006-09-26  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmband/bandtrack.c, dlls/dmband/dmutils.c:
	dmband: Print 64bit integers with wine_dbgstr_longlong.

2006-09-25  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: If the feature linked to a component has a state of INSTALLSTATE_UNKNOWN,
	the component's state should match.

	* dlls/msi/helpers.c, dlls/msi/tests/package.c:
	msi: Only specifically resolve the TARGETDIR directory once.

	* dlls/msi/tests/package.c:
	msi: Add tests for setting the target path of TARGETDIR (based on a patch by
	Andrey Turkin).

	* dlls/msi/database.c, dlls/msi/install.c, dlls/msi/msipriv.h,
	  dlls/msi/package.c, dlls/msi/tests/package.c:
	msi: Store the full path to the database file in the MSIDATABASE structure.

2006-09-21  Nicolas Delcros <nicolas@dyalog.com>

	* dlls/user/property.c, include/winuser.h:
	winuser.h: Fix PROPENUMPROCEXA/W types declarations.

2006-09-21  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/Makefile.in,
	  dlls/setupapi/tests/devinst.c:
	setupapi: Brace the guid in SetupDiOpenClassRegKeyExW.

2006-09-26  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, include/config.h.in, programs/explorer/hal.c:
	explorer: Work around the latest HAL binary compatibility breakage.

2006-09-26  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/tests/sip.c:
	crypt32: Add tests for CryptSIPRetrieveSubjectGuid.

2006-09-22  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/queue.c:
	setupapi: Fix a typo.

2006-09-26  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/d3d8/d3d8_main.c:
	d3d8: Remove no longer used imports.

	* dlls/d3d9/d3d9_main.c:
	d3d9: Remove no longer used imports.

2006-09-26  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/mssip.h:
	mssip.h: Added function definition.

2006-09-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/tests/font.c:
	gdi32: Add a test for GetKerningPairs.

	* dlls/gdi/font.c, dlls/gdi/freetype.c, dlls/gdi/gdi_private.h:
	gdi32: Implement GetKerningPairs for TrueType fonts.

2006-09-26  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Use a proper protector for X11/XKBlib.h.

2006-09-25  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/dbg.y, programs/winedbg/debugger.h,
	  programs/winedbg/stack.c, programs/winedbg/tgt_active.c,
	  programs/winedbg/winedbg.c:
	winedbg: Fixed regression in gdb startup (especially gdb proxy).

	* programs/winedbg/memory.c:
	winedbg: Put back the %d format for printing integral values even for
	64bit internal values as the default format in winebdg command imposes.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Added support for a couple of compiland's children.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Fix location computation when attribute has a constant form instead
	of a block form.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Change the definition of an attribute so that we can pass around
	the form.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Move the attribute union (now nameless) into a structure called
	attribute.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Added support for DW_OP_breg* operations in location computation.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/msc.c, dlls/dbghelp/stabs.c, dlls/dbghelp/symbol.c:
	dbghelp: Variables & registers.
	- more strickling differentiation variable location between
	a register, and the dereferenced address defined by a
	register (and possibly an offset)
	- added a parameter to symt_add_func_local (and internal symbol
	data struct) to help differentiate
	- fix all debug parsers to confer to this new scheme

2006-09-25  Saulius Krasuckas <saulius2@ar.fi.lt>

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Try to open nonexisting compressed files.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Add more cases for opening compressed files.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Move indirect opening of compressed files into separate functions.
	Also rename W-string variable to get some naming consistency.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Compare result to predefined compressed file name, not calculated
	one.

2006-09-25  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/cert.c:
	crypt32: Reduce indent level of tests.

2006-09-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Use GL_EXTCALL.
	That fixes compilation with gl headers that do not know about glUniform4fvARB.

2006-09-25  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/winex11.drv.spec:
	winex11.Drv: Remove unneeded wgl exports.

2006-09-25  Duane Clark <fpga@pacbell.net>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: fgetc needs to use unsigned parameters.
	Spotted by and adapted from test written by Tobias Ringström.

2006-09-25  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmcompos/chordmaptrack.c, dlls/dmcompos/dmcompos_main.c,
	  dlls/dmcompos/signposttrack.c:
	dmcompos: Print 64bit integers with wine_dbgstr_longlong.

2006-09-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Cast-qual warnings fix.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Cast-qual warnings fix.

	* dlls/rpcrt4/cpsf.c:
	rpcrt4: Cast-qual warnings fix.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Cast-qual warnings fix.

	* dlls/riched20/reader.c:
	riched20: Cast-qual warning fix.

2006-09-25  Fatih Aşıcı <fatih.asici@gmail.com>

	* programs/notepad/Tr.rc:
	notepad: Update Turkish resources.

	* programs/clock/Tr.rc:
	clock: Update Turkish resources.

	* dlls/shell32/shell32_Tr.rc:
	shell32: Update Turkish resources.

2006-09-25  Jan Zerebecki <jan.wine@zerebecki.de>

	* programs/regedit/listview.c:
	regedit: Remove dead code.

2006-09-24  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, include/wine/wined3d_types.h:
	wined3d: Add the missing gamma cap.

2006-09-23  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c:
	wintrust: Implement SoftpubDllRegisterServer.

2006-09-22  Ivan Leo <ivanleo@gmail.com>

	* dlls/dinput/mouse.c:
	dinput: Add some error checks to mouse.c.

2006-09-22  Frank Richter <frank.richter@gmail.com>

	* dlls/setupapi/query.c, dlls/setupapi/tests/query.c:
	setupapi: Duplicate behaviour of native SetupGetInfInformation with NULL
	ReturnBuffer and certain ReturnBufferSizes.

2006-09-21  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/comctl32.h, dlls/comctl32/commctrl.c,
	  dlls/comctl32/toolbar.c:
	comctl32: toolbar: If wParam in TB_ADDBUTTON is large, enlarge the
	bitmap before ImageList_AddMasked rather then call
	ImageList_SetImagesCount after.

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Resize the imagelist icons after a TB_SETBITMAPSIZE.

2006-09-25  Marcus Meissner <marcus@jet.franken.de>

	* dlls/ntdll/signal_i386.c:
	ntdll: Avoid ebx being clobbered in exception handler.

2006-09-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added more loading tests.

	* dlls/mshtml/navigate.c:
	mshtml: Set dwOptions in GetBindInfo to 0x80000 to make test pass.

	* dlls/mshtml/nsembed.c:
	mshtml: Initialize url in OnStartURIOpen.

	* dlls/mshtml/persist.c:
	mshtml: Remove FIXMEs and fix a typo.

	* dlls/mshtml/navigate.c, dlls/mshtml/task.c:
	mshtml: Added PARSECOMPLETE task implementation.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/navigate.c, dlls/mshtml/nsio.c, dlls/mshtml/persist.c:
	mshtml: Store BSCallback in HTMDocument.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c:
	mshtml: Store IBinding interface in BSCallback.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/persist.c, dlls/mshtml/task.c:
	mshtml: Add SETDOWNLOADSTATE task implementation and use it in
	IPersistMoniker::Load.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmldoc.c, dlls/mshtml/main.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/task.c, dlls/mshtml/view.c:
	mshtml: Create one "Internet Explorer_Hidden" window per thread.

2006-09-25  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/devenum/devenum.rc, dlls/shell32/shell32_Fr.rc:
	dlls: Assorted French translation improvements.

2006-09-25  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/winefile/Pl.rc:
	winefile: Update Polish translation.

	* dlls/user/resources/user32_Pl.rc:
	user32: Update Polish translation.

	* programs/regedit/Pl.rc:
	regedit: Update Polish translation.

	* programs/cmdlgtst/En.rc, programs/cmdlgtst/Ru.rc:
	cmdlgtst: Move the PageSetup_Flags_Dialog from Ru.rc to En.rc.

	* dlls/mshtml/rsrc.rc, dlls/msi/msi.rc, dlls/shdocvw/shdocvw.rc,
	  programs/oleview/rsrc.rc, programs/uninstaller/rsrc.rc:
	resources: Mark common resources as LANG_NEUTRAL, SUBLANG_NEUTRAL.

2006-09-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/surface.c, dlls/wined3d/device.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c:
	wined3d: Surface data is 32 bit aligned.

2006-09-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Avoid wasting a uniform.

	* dlls/wined3d/vertexbuffer.c, dlls/wined3d/wined3d_private.h:
	wined3d: Stop fixing up a VBO if the declaration changes too often.

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Verify the VBO vertex declaration every draw.

	* dlls/wined3d/surface_gdi.c:
	wined3d: Fix a typo.

2006-09-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/quartz/acmwrapper.c, dlls/quartz/avidec.c:
	quartz: Cast-qual warnings fix.

2006-09-21  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/olefont.c, dlls/oleaut32/typelib.c:
	oleaut32: Cast-qual warnings fix.

2006-09-22  Andrey Turkin <pancha@mail.nnov.ru>

	* programs/msiexec/msiexec.c:
	msiexec: Should recognize /xpackage syntax.

2006-09-21  Aric Stewart <aric@codeweavers.com>

	* dlls/user/edit.c:
	user: Correct buffer overflows in IME processing code.

2006-09-24  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msi/dialog.c:
	msi: Support more dialog groups.

2006-09-25  Nicolas Delcros <nicolas@dyalog.com>

	* tools/wrc/wrc.c:
	wrc: Fixed typo for the --pedantic argument.

2006-09-25  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/wincrypt.h:
	wincrypt.h: A few more defines.

2006-09-22  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  include/wine/wined3d_gl.h:
	wined3d: glBlend* fixes.

2006-09-21  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Better IDM_PARSECOMPLETE test.

	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/tests/webbrowser.c,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Added [get|put]_Silent implementation.
	As we don't have any dialog in WebBrowser implemented yet, all we have to do
	is to store silent value.

2006-09-21  Huw Davies <huw@codeweavers.com>

	* dlls/advapi32/security.c:
	advapi32: Fix ADVAPI_GetComputerSid to work correctly if a sid doesn't exist
	in the registry.
	This makes the tests run correctly on first invocation.

	* dlls/gdi/tests/font.c:
	gdi32: Make the bitmap font tests locale aware.

	* dlls/gdi/tests/font.c:
	gdi32: Win 2000 and Win XP behave differently if there's a '\n' in the string,
	so remove the width test completely.

2006-09-17  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/secur32.c:
	secur32: Stop loading Negotiate until it is actually working.

2006-09-24  Alexandre Julliard <julliard@winehq.org>

	* programs/.gitignore, programs/make_progs, tools/make_makefiles:
	make_makefiles: Merged the make_progs script into make_makefiles.

2006-09-20  Detlef Riekenberg <wine.dev@web.de>

	* include/msvcrt/sys/types.h, include/winsock.h:
	include: Open Watcom compatibility (Fix _BSDTYPES_DEFINED typo).

2006-09-22  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Moved the libGL.a check to the final warnings.

	* Makefile.in, configure, configure.ac, include/.gitignore:
	Makefile: Automatically update config.h if configure changed.

	* tools/make_makefiles:
	make_makefiles: Parse the makefiles to find the correct rules file dependency.

	* tools/makedep.c:
	makedep: Update dependencies even with no source files.

2006-09-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/resource.c, dlls/user/tests/resource.c,
	  dlls/user/tests/resource.rc:
	user: Fix handling of high bits of resource id in LoadString, reported by
	Andrey Turkin.

2006-09-17  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Allow null streams in the vertex declaration.

2006-09-17  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Tell the user if ntlm_auth is not found or outdated.

2006-09-16  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/msacm32/driver.c:
	msacm: acmDriverPriority() compares dwPriority against negative values.
	This issue was spotted by Andrew Talbot.

2006-09-15  Benjamin Arai <me@benjaminarai.com>

	* Makefile.in, configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/nddeapi/Makefile.in, dlls/nddeapi/nddeapi.c,
	  dlls/nddeapi/nddeapi.spec:
	nddeapi: Implement stub dll for nddeapi.

2006-09-14  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/comdlg32/fontdlg.c:
	comdlg32: Show better font style information in fontdlg.

2006-09-13  James Hawkins <truiken@gmail.com>

	* dlls/wintrust/crypt.c, dlls/wintrust/wintrust.spec:
	wintrust: Add a stub implementation of CryptCATClose.

	* dlls/wintrust/crypt.c, dlls/wintrust/wintrust.spec, include/mscat.h:
	wintrust: Add a stub implementation of CryptCATEnumerateMember.

	* dlls/wintrust/crypt.c, dlls/wintrust/wintrust_main.c:
	wintrust: Move the Crypt* functions to crypt.c.

	* dlls/wintrust/Makefile.in, dlls/wintrust/crypt.c,
	  dlls/wintrust/wintrust.spec:
	wintrust: Add a stub implementation of CryptCATOpen.

2006-09-20  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Fix the return code of TB_ADDBITMAP.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Simplify the TOOLBAR_AddButton.

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Fix IDB_STD_VIEW_* icons count (with testcase).

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Use correctly wParam in TB_ADDBITMAP.

	* dlls/comctl32/imagelist.c, dlls/comctl32/tests/imagelist.c:
	comctl32: imagelist: SetImageCount can be used to decrease image count (with
	testcase).

	* dlls/comctl32/tests/Makefile.in, dlls/comctl32/tests/propsheet.rc,
	  dlls/comctl32/tests/resources.h, dlls/comctl32/tests/rsrc.rc,
	  dlls/comctl32/tests/toolbar.c:
	comctl32: toolbar: Add some tests for TB_ADDBITMAP.

2006-09-20  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/helpers.c,
	  dlls/msi/tests/package.c:
	msi: Disable child features of parent features that are unselected because of
	the install level.

	* dlls/msi/dialog.c:
	msi: Translate the INSTALLSTATE_UNKNOWN index into the INSTALLSTATE_ABSENT
	image index.

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: Don't check a component's install state if a component ID is not provided.

	* dlls/msi/tests/package.c:
	msi: Fix the results of a few tests to match Windows.

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: Load the component states in CostFinalize instead of CostInitialize.

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: Initialize all features' action states to INSTALLSTATE_UNKNOWN.

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: Only override a feature whose action state is INSTALLSTATE_SOURCE.

	* dlls/advpack/files.c:
	advpack: backup should be a const string.

2006-09-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/wininet/tests/http.c:
	wininet/tests: Don't fail the tests if the network is unreachable.

	* dlls/urlmon/tests/url.c:
	urlmon/tests: Don't fail the tests if the network is unreachable.

2006-09-20  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/winex11.drv.spec:
	opengl: Move wgl font code to winex11.drv.

2006-09-20  Michael Stefaniuc <mstefani@redhat.de>

	* include/wine/mmsystem16.h:
	include: Make the return type of mmioSendMessage16 in the function declaration
	match that of the function definition.

2006-09-20  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/msxml3/nodemap.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Fix IXMLDOMNamedNodeMap_getNamedItem() conformance on error.

2006-09-20  Benjamin Arai <me@benjaminarai.com>

	* dlls/msi/tests/db.c:
	msi: Adds test to check "JOIN" operator with "*" operator for the SELECT clause
	returns the correct results.

	* dlls/msi/tests/db.c:
	msi: Adds test to check if basic "JOIN" operator without "WHERE" clause returns
	the correct results.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Conformance test for function variant:VarImp.

	* dlls/oleaut32/oleaut32.spec, dlls/oleaut32/variant.c:
	oleaut32: Implementation for function variant:VarImp.

2006-09-20  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmime/dmutils.c, dlls/dmime/lyricstrack.c,
	  dlls/dmime/markertrack.c, dlls/dmime/paramcontroltrack.c,
	  dlls/dmime/performance.c, dlls/dmime/segtriggertrack.c,
	  dlls/dmime/seqtrack.c, dlls/dmime/sysextrack.c,
	  dlls/dmime/tempotrack.c, dlls/dmime/timesigtrack.c,
	  dlls/dmime/tool.c, dlls/dmime/wavetrack.c:
	dmime: Print 64bit integers with wine_dbgstr_longlong.

2006-09-20  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ole32/stg_prop.c:
	ole32: Cast-qual warnings fix.

	* dlls/odbc32/proxyodbc.c:
	odbc32: Cast-qual warning fix.

2006-09-20  Juan Lang <juan_lang@yahoo.com>

	* dlls/netapi32/ds.c, dlls/netapi32/tests/ds.c:
	netapi32: Partially implement DsRoleGetPrimaryDomainInformation, and
	DsRoleFreeMemory.

	* dlls/crypt32/chain.c:
	crypt32: Don't crash on freeing null chain engine.

	* dlls/crypt32/tests/cert.c:
	crypt32: Test exporting key acquired through CryptAcquireCertificatePrivateKey.

	* dlls/crypt32/tests/encode.c:
	crypt32: Test decoding a big CRL.

2006-09-20  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Do not bind the 0 vbo when vbos are unsupported.

2006-09-21  Alexandre Julliard <julliard@winehq.org>

	* server/process.c, server/process.h, server/request.c:
	server: Kill the process without SIGTERM when the fd socket is closed.

	* configure, configure.ac:
	configure: Don't display any messages when started from the makefile to rebuild
	config.status.

2006-09-20  Alexandre Julliard <julliard@winehq.org>

	* configure.ac:
	configure: Escape newlines in DEPENDENCIES when using an old autoconf version.

	* Makefile.in, tools/Makefile.in:
	Makefile: Fixed rule for building makedep when cross-compiling.

2006-09-20  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/sip.c:
	crypt32: Simplify by removing unneeded backslash.

2006-09-20  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/tests/font.c:
	gdi32: GetTextExtentPoint and GetTextExtentExPoint behave differently if
	there's a \n in the string.

	* dlls/gdi/freetype.c:
	gdi32: Fix ppem in the case that there isn't an exact height match in the
	vdmx table.

	* dlls/gdi/tests/font.c:
	gdi32: Only run the GetGlyphIndices test if Symbol is installed.

2006-09-19  Benjamin Arai <me@benjaminarai.com>

	* dlls/msi/tests/db.c:
	msi: Adds test to check if "AND" operator returns the correct result for the
	"WHERE" clause.

	* dlls/msi/tests/db.c:
	msi: Adds tests to check if joins return the correct number of rows.

	* dlls/msi/tests/db.c:
	msi: Updates tests for joins to include row and column ids in message.

2006-09-17  Christoph Frick <frick@sc-networks.com>

	* dlls/wined3d/device.c:
	wined3d: Clamp the light exponent at 128.

2006-09-18  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/setupapi/tests/devinst.c:
	setupapi/tests: Use pSetupDiOpenClassRegKeyExA.

	* dlls/ntdll/cdrom.c:
	ntdll: Don't do DVD_READ_STRUCTURE when inbuffer or outbuffer has issues
	(Coverity).

	* dlls/ntdll/reg.c, dlls/ntdll/tests/reg.c:
	ntdll: Fixed conditional expression (Coverity).

2006-09-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/font.c:
	gdi: If there is no space for strings GetOutlineTextMetricsA should not indicate
	that they present.

2006-09-17  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Initialize default coop level. Invert logic in hook handler.

2006-09-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ntdll/env.c:
	ntdll: Cast-qual warning fix.

2006-09-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/action.c, dlls/msi/appsearch.c, dlls/msi/registry.c,
	  dlls/msi/source.c:
	msi: Cast-qual warnings fix.

2006-09-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/hlink/hlink_main.c:
	hlink: Cast-qual warnings fix.

2006-09-17  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/shlwapi/tests/path.c, dlls/url/url_main.c:
	url: Fixed wrong argument (Coverity).

2006-09-16  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* programs/notepad/dialog.c:
	notepad: Keep the modify information of edit control when toggle wrap line.

	* programs/notepad/main.c, programs/notepad/main.h:
	notepad: Use HKCU\Software\Microsoft\Notepad for font and window-geometry.

2006-09-15  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Use ACTION_UpdateComponentStates in the selection tree so we don't have
	to duplicate the component changing logic.

	* dlls/msi/helpers.c, dlls/msi/tests/package.c:
	msi: INSTALLSTATE_SOURCE also overrides a parent feature state change to
	INSTALLSTATE_ABSENT.

	* dlls/msi/tests/package.c:
	msi: Add tests for components with multiple parent features.

2006-09-14  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Add the total and free disk space to the VolumeCostList control.

2006-09-18  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/d3d8/d3d8_main.c, dlls/d3d8/tests/d3d8_main.c:
	d3d8: More correct stub for ValidatePixelShader + tests.

2006-09-16  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/mouse.c, dlls/dinput/tests/mouse.c:
	dinput: Return proper errors in SetCooperativeLevel.

2006-09-14  Vijay Kiran Kamuju <infyquest@gmail.com>

	* include/winuser.h:
	include: Add some missing definitions in winuser.h.

2006-09-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advpack/advpack_private.h:
	advpack: Remove duplicate function declaration.

2006-09-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/netapi32/nbnamecache.c:
	netapi32: Cast-qual warnings fix.

2006-09-18  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvcrt/file.c, dlls/msvcrt/misc.c:
	msvcrt: Cast-qual warnings fix.

2006-09-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mapi32/util.c:
	mapi32: Cast-qual warning fix.

	* dlls/kernel32/resource.c:
	kernel32: Cast-qual warnings fix.

	* dlls/kernel32/ne_module.c:
	kernel32: Cast-qual warnings fix.

	* dlls/kernel32/instr.c:
	kernel32: Cast-qual warnings fix.

	* dlls/kernel32/heap.c, dlls/kernel32/registry16.c, dlls/kernel32/time.c,
	  dlls/kernel32/volume.c:
	kernel32: Cast-qual warnings fix.

2006-09-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/except.c, dlls/ntdll/signal_i386.c,
	  dlls/winex11.drv/dib.c, include/winnt.h,
	  programs/winedbg/tgt_active.c:
	include: Added definitions for the fault address exception information.

	* dlls/kernel32/except.c, dlls/ntdll/thread.c, include/winbase.h,
	  include/wine/exception.h, include/winnt.h:
	include: Exception filters should return LONG, not DWORD.
	Also move UnhandledExceptionFilter definitions to winbase.h since they
	are there in the latest SDK.

2006-09-18  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* include/commctrl.h:
	include: Win64 fix in TBBUTTON.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Don't leak the intoPtr->bitmaps during resizing and
	destruction.

	* dlls/comctl32/header.c:
	comctl32: header: Update the header comment.

	* dlls/comctl32/header.c:
	comctl32: header: Remove the nOldWidth.

	* dlls/comctl32/header.c:
	comctl32: header: Send new values in notifies during resize and drag-drop
	instead of the old ones.
	This also fixes the notify format of HDN_ITEMCLICKED(A/W).

	* dlls/comctl32/header.c:
	comctl32: header: Merge the simple delete and complex delete.

	* dlls/comctl32/header.c:
	comctl32: header: Simplify the insert/delete code by using ReAlloc.

	* dlls/comctl32/header.c, dlls/comctl32/tests/header.c:
	comctl32: header: Test the header order-management code and fix some bugs.

2006-09-19  Juan Lang <juan_lang@yahoo.com>

	* include/wincrypt.h:
	wincrypt.h: Add more missing definitions and prototypes.

2006-09-18  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmloader/debug.c:
	dmloader: Print 64bit integers with wine_dbgstr_longlong.

2006-09-18  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Fix missing backslash.

2006-09-17  Francois Gouget <fgouget@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Add the missing SecurityService keys.

2006-09-17  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/setupapi/devinst.c:
	setupapi: Fixed wrong check (Coverity).

2006-09-16  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/tests/str.c:
	crypt32: Cast-qual warnings fix.

2006-09-15  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/tests/Makefile.in, dlls/crypt32/tests/main.c,
	  dlls/crypt32/tests/sip.c:
	crypt32: Move SIP related tests to their own file.

2006-09-14  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/Makefile.in, dlls/crypt32/main.c, dlls/crypt32/sip.c:
	crypt32: Move SIP related functions to their own file.

	* dlls/crypt32/crypt32.spec:
	crypt32: Add a few functions to the spec file.

2006-09-18  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fix wined3d/opengl regression.

2006-09-15  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fix fbconfig regression.

2006-09-13  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/setupapi.spec, dlls/setupapi/stubs.c, include/setupapi.h:
	setupapi: Add stubs for SetupOpenLog, SetupCloseLog, and SetupLogError.

	* dlls/setupapi/parser.c, dlls/setupapi/setupapi.spec,
	  dlls/setupapi/tests/parser.c:
	setupapi: Implement pSetupGetField, with tests.

2006-09-14  Hwang YunSong(황윤성 <hys545@dreamwiz.com>

	* documentation/README.ko:
	README.ko: Updated.

2006-09-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/gdi/font.c, dlls/gdi/printdrv.c:
	gdi: Cast-qual warnings fix.

	* dlls/gdi/enhmetafile.c:
	gdi: Cast-qual warnings fix.

	* dlls/gdi/bitmap.c, dlls/gdi/brush.c, dlls/gdi/dib.c:
	gdi: Cast-qual warnings fix.

2006-09-13  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/typelib.c:
	widl: Don't compare result of read() to unsigned type.

	* tools/widl/write_msft.c:
	widl: Remove unused parameter in create_msft_typeinfo.

	* tools/widl/write_msft.c:
	widl: Remove unused parameter in ctl2_encode_name.

	* tools/widl/utils.c:
	widl: Replace a #if by if for better compiler checking.

	* tools/widl/typegen.c:
	widl: Remove unused parameter in write_ip_tfs.

	* tools/widl/parser.l:
	widl: Fix warning about unused structure field in lexer.

	* tools/widl/widl.man.in:
	widl: Add -u and -U options to man page.

2006-09-13  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmscript/dmscript_main.c, dlls/dmscript/scripttrack.c:
	dmscript: Print 64bit integers with wine_dbgstr_longlong.

2006-09-13  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/tests/main.c:
	crypt32/tests: Some tests for CryptSIPLoad.

2006-09-13  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/query.c, dlls/dnsapi/record.c:
	dnsapi: Use the proper type for the return value in dns_do_query_netbios().
	Remove some unnecessary casts.

	* dlls/dnsapi/dnsapi.spec, dlls/dnsapi/record.c,
	  dlls/dnsapi/tests/record.c:
	dnsapi: Implement and test DnsRecordSetDetach.

2006-09-13  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/listview.c:
	comctl32: listview: Don't edit labels after the first click of a double click.

	* dlls/comctl32/listview.c:
	comctl32: listview: Don't edit labels on click if the view was not focused.

2006-09-13  Nicolas Delcros <nicolas@dyalog.com>

	* include/commctrl.h:
	include/commctrl.h: TV_DISPINFO constants definition.

2006-09-12  Nicolas Delcros <nicolas@dyalog.com>

	* include/windows.h:
	include/windows.h: Added _INC_WINDOWS declaration.

2006-09-14  Alexandre Julliard <julliard@winehq.org>

	* Makefile.in:
	makefile: Automatically re-run configure if it has been modified.

	* Makefile.in, tools/make_makefiles:
	makefiles: Automatically rebuild makefiles when their sources and/or configure
	changed.

	* Make.rules.in, Makefile.in, configure, configure.ac, tools/Makefile.in:
	makefiles: Attempt to automatically run make depend when reading an updated
	makefile.

	* Makefile.in, dlls/Makefile.in, dlls/make_dlls,
	  documentation/Makefile.in, fonts/Makefile.in, libs/Makefile.in,
	  programs/Makefile.in, programs/make_progs:
	makefiles: Remove the dependencies comment in files that don't need it.

	* configure, configure.ac, dlls/activeds/Makefile.in,
	  dlls/advapi32/Makefile.in, dlls/advapi32/tests/Makefile.in,
	  dlls/advpack/Makefile.in, dlls/advpack/tests/Makefile.in,
	  dlls/amstream/Makefile.in, dlls/atl/Makefile.in,
	  dlls/avicap32/Makefile.in, dlls/avifil32/Makefile.in,
	  dlls/cabinet/Makefile.in, dlls/cabinet/tests/Makefile.in,
	  dlls/capi2032/Makefile.in, dlls/cards/Makefile.in,
	  dlls/cfgmgr32/Makefile.in, dlls/comcat/Makefile.in,
	  dlls/comcat/tests/Makefile.in, dlls/comctl32/Makefile.in,
	  dlls/comctl32/tests/Makefile.in, dlls/comdlg32/Makefile.in,
	  dlls/comdlg32/tests/Makefile.in, dlls/compstui/Makefile.in,
	  dlls/crtdll/Makefile.in, dlls/crypt32/Makefile.in,
	  dlls/crypt32/tests/Makefile.in, dlls/cryptdll/Makefile.in,
	  dlls/cryptnet/Makefile.in, dlls/ctl3d32/Makefile.in,
	  dlls/d3d8/Makefile.in, dlls/d3d8/tests/Makefile.in,
	  dlls/d3d9/Makefile.in, dlls/d3d9/tests/Makefile.in,
	  dlls/d3dim/Makefile.in, dlls/d3drm/Makefile.in,
	  dlls/d3dx8/Makefile.in, dlls/d3dxof/Makefile.in,
	  dlls/dbghelp/Makefile.in, dlls/dciman32/Makefile.in,
	  dlls/ddraw/Makefile.in, dlls/ddraw/tests/Makefile.in,
	  dlls/devenum/Makefile.in, dlls/dinput/Makefile.in,
	  dlls/dinput/tests/Makefile.in, dlls/dinput8/Makefile.in,
	  dlls/dmband/Makefile.in, dlls/dmcompos/Makefile.in,
	  dlls/dmime/Makefile.in, dlls/dmloader/Makefile.in,
	  dlls/dmscript/Makefile.in, dlls/dmstyle/Makefile.in,
	  dlls/dmsynth/Makefile.in, dlls/dmusic/Makefile.in,
	  dlls/dmusic32/Makefile.in, dlls/dnsapi/Makefile.in,
	  dlls/dnsapi/tests/Makefile.in, dlls/dplay/Makefile.in,
	  dlls/dplayx/Makefile.in, dlls/dpnet/Makefile.in,
	  dlls/dpnhpast/Makefile.in, dlls/dsound/Makefile.in,
	  dlls/dsound/tests/Makefile.in, dlls/dswave/Makefile.in,
	  dlls/dxdiagn/Makefile.in, dlls/dxerr8/Makefile.in,
	  dlls/dxerr9/Makefile.in, dlls/dxguid/Makefile.in,
	  dlls/gdi/Makefile.in, dlls/gdi/tests/Makefile.in,
	  dlls/glu32/Makefile.in, dlls/glut32/Makefile.in,
	  dlls/gphoto2.ds/Makefile.in, dlls/hhctrl.ocx/Makefile.in,
	  dlls/hid/Makefile.in, dlls/hlink/Makefile.in,
	  dlls/hlink/tests/Makefile.in, dlls/iccvid/Makefile.in,
	  dlls/icmp/Makefile.in, dlls/ifsmgr.vxd/Makefile.in,
	  dlls/imaadp32.acm/Makefile.in, dlls/imagehlp/Makefile.in,
	  dlls/imm32/Makefile.in, dlls/infosoft/Makefile.in,
	  dlls/infosoft/tests/Makefile.in, dlls/inseng/Makefile.in,
	  dlls/iphlpapi/Makefile.in, dlls/iphlpapi/tests/Makefile.in,
	  dlls/itss/Makefile.in, dlls/kernel32/Makefile.in,
	  dlls/kernel32/tests/Makefile.in, dlls/localspl/Makefile.in,
	  dlls/lz32/Makefile.in, dlls/lz32/tests/Makefile.in,
	  dlls/mapi32/Makefile.in, dlls/mapi32/tests/Makefile.in,
	  dlls/mciavi32/Makefile.in, dlls/mcicda/Makefile.in,
	  dlls/mciseq/Makefile.in, dlls/mciwave/Makefile.in,
	  dlls/midimap/Makefile.in, dlls/mlang/Makefile.in,
	  dlls/mlang/tests/Makefile.in, dlls/mmdevldr.vxd/Makefile.in,
	  dlls/monodebg.vxd/Makefile.in, dlls/mpr/Makefile.in,
	  dlls/mprapi/Makefile.in, dlls/msacm32.drv/Makefile.in,
	  dlls/msacm32/Makefile.in, dlls/msacm32/tests/Makefile.in,
	  dlls/msadp32.acm/Makefile.in, dlls/mscms/Makefile.in,
	  dlls/mscms/tests/Makefile.in, dlls/msdmo/Makefile.in,
	  dlls/msftedit/Makefile.in, dlls/msg711.acm/Makefile.in,
	  dlls/mshtml/Makefile.in, dlls/mshtml/tests/Makefile.in,
	  dlls/msi/Makefile.in, dlls/msi/tests/Makefile.in,
	  dlls/msimg32/Makefile.in, dlls/msisys.ocx/Makefile.in,
	  dlls/msnet32/Makefile.in, dlls/msrle32/Makefile.in,
	  dlls/msvcrt/Makefile.in, dlls/msvcrt/tests/Makefile.in,
	  dlls/msvcrt20/Makefile.in, dlls/msvcrt40/Makefile.in,
	  dlls/msvcrtd/Makefile.in, dlls/msvcrtd/tests/Makefile.in,
	  dlls/msvfw32/Makefile.in, dlls/msvidc32/Makefile.in,
	  dlls/mswsock/Makefile.in, dlls/msxml3/Makefile.in,
	  dlls/msxml3/tests/Makefile.in, dlls/netapi32/Makefile.in,
	  dlls/netapi32/tests/Makefile.in, dlls/newdev/Makefile.in,
	  dlls/ntdll/Makefile.in, dlls/ntdll/tests/Makefile.in,
	  dlls/ntdsapi/Makefile.in, dlls/objsel/Makefile.in,
	  dlls/odbc32/Makefile.in, dlls/odbccp32/Makefile.in,
	  dlls/ole32/Makefile.in, dlls/ole32/tests/Makefile.in,
	  dlls/oleacc/Makefile.in, dlls/oleaut32/Makefile.in,
	  dlls/oleaut32/tests/Makefile.in, dlls/olecli32/Makefile.in,
	  dlls/oledlg/Makefile.in, dlls/olepro32/Makefile.in,
	  dlls/olesvr32/Makefile.in, dlls/opengl32/Makefile.in,
	  dlls/powrprof/Makefile.in, dlls/psapi/Makefile.in,
	  dlls/psapi/tests/Makefile.in, dlls/pstorec/Makefile.in,
	  dlls/qcap/Makefile.in, dlls/quartz/Makefile.in,
	  dlls/quartz/tests/Makefile.in, dlls/query/Makefile.in,
	  dlls/rasapi32/Makefile.in, dlls/riched20/Makefile.in,
	  dlls/riched20/tests/Makefile.in, dlls/riched32/Makefile.in,
	  dlls/rpcrt4/Makefile.in, dlls/rpcrt4/tests/Makefile.in,
	  dlls/rsabase/Makefile.in, dlls/rsabase/tests/Makefile.in,
	  dlls/rsaenh/Makefile.in, dlls/rsaenh/tests/Makefile.in,
	  dlls/sane.ds/Makefile.in, dlls/secur32/Makefile.in,
	  dlls/secur32/tests/Makefile.in, dlls/security/Makefile.in,
	  dlls/sensapi/Makefile.in, dlls/serialui/Makefile.in,
	  dlls/setupapi/Makefile.in, dlls/setupapi/tests/Makefile.in,
	  dlls/sfc/Makefile.in, dlls/shdocvw/Makefile.in,
	  dlls/shdocvw/tests/Makefile.in, dlls/shell32/Makefile.in,
	  dlls/shell32/tests/Makefile.in, dlls/shfolder/Makefile.in,
	  dlls/shlwapi/Makefile.in, dlls/shlwapi/tests/Makefile.in,
	  dlls/snmpapi/Makefile.in, dlls/spoolss/Makefile.in,
	  dlls/stdole2.tlb/Makefile.in, dlls/stdole32.tlb/Makefile.in,
	  dlls/sti/Makefile.in, dlls/strmiids/Makefile.in,
	  dlls/svrapi/Makefile.in, dlls/tapi32/Makefile.in,
	  dlls/twain_32/Makefile.in, dlls/unicows/Makefile.in,
	  dlls/url/Makefile.in, dlls/urlmon/Makefile.in,
	  dlls/urlmon/tests/Makefile.in, dlls/user/Makefile.in,
	  dlls/user/tests/Makefile.in, dlls/userenv/Makefile.in,
	  dlls/usp10/Makefile.in, dlls/usp10/tests/Makefile.in,
	  dlls/uuid/Makefile.in, dlls/uxtheme/Makefile.in,
	  dlls/uxtheme/tests/Makefile.in, dlls/vdhcp.vxd/Makefile.in,
	  dlls/vdmdbg/Makefile.in, dlls/version/Makefile.in,
	  dlls/version/tests/Makefile.in, dlls/vmm.vxd/Makefile.in,
	  dlls/vnbt.vxd/Makefile.in, dlls/vnetbios.vxd/Makefile.in,
	  dlls/vtdapi.vxd/Makefile.in, dlls/vwin32.vxd/Makefile.in,
	  dlls/w32skrnl/Makefile.in, dlls/winecrt0/Makefile.in,
	  dlls/wined3d/Makefile.in, dlls/winedos/Makefile.in,
	  dlls/winemp3.acm/Makefile.in, dlls/wineps.drv/Makefile.in,
	  dlls/winex11.drv/Makefile.in, dlls/wininet/Makefile.in,
	  dlls/wininet/tests/Makefile.in, dlls/winmm/Makefile.in,
	  dlls/winmm/joystick/Makefile.in, dlls/winmm/tests/Makefile.in,
	  dlls/winmm/winealsa/Makefile.in, dlls/winmm/winearts/Makefile.in,
	  dlls/winmm/wineaudioio/Makefile.in,
	  dlls/winmm/winecoreaudio/Makefile.in, dlls/winmm/wineesd/Makefile.in,
	  dlls/winmm/winejack/Makefile.in, dlls/winmm/winenas/Makefile.in,
	  dlls/winmm/wineoss/Makefile.in, dlls/winnls32/Makefile.in,
	  dlls/winspool.drv/Makefile.in, dlls/winspool.drv/tests/Makefile.in,
	  dlls/wintab32/Makefile.in, dlls/wintrust/Makefile.in,
	  dlls/wintrust/tests/Makefile.in, dlls/wldap32/Makefile.in,
	  dlls/wnaspi32/Makefile.in, dlls/wow32/Makefile.in,
	  dlls/ws2_32/Makefile.in, dlls/ws2_32/tests/Makefile.in,
	  dlls/wsock32/Makefile.in, dlls/wtsapi32/Makefile.in,
	  include/Makefile.in, libs/port/Makefile.in, libs/wine/Makefile.in,
	  libs/wpp/Makefile.in, loader/Makefile.in, programs/clock/Makefile.in,
	  programs/cmd/Makefile.in, programs/cmdlgtst/Makefile.in,
	  programs/control/Makefile.in, programs/eject/Makefile.in,
	  programs/expand/Makefile.in, programs/explorer/Makefile.in,
	  programs/hh/Makefile.in, programs/icinfo/Makefile.in,
	  programs/iexplore/Makefile.in, programs/msiexec/Makefile.in,
	  programs/notepad/Makefile.in, programs/oleview/Makefile.in,
	  programs/progman/Makefile.in, programs/regedit/Makefile.in,
	  programs/regsvr32/Makefile.in, programs/rpcss/Makefile.in,
	  programs/rundll32/Makefile.in, programs/start/Makefile.in,
	  programs/taskmgr/Makefile.in, programs/uninstaller/Makefile.in,
	  programs/view/Makefile.in, programs/wineboot/Makefile.in,
	  programs/winebrowser/Makefile.in, programs/winecfg/Makefile.in,
	  programs/wineconsole/Makefile.in, programs/winedbg/Makefile.in,
	  programs/winefile/Makefile.in, programs/winemenubuilder/Makefile.in,
	  programs/winemine/Makefile.in, programs/winepath/Makefile.in,
	  programs/winetest/Makefile.in, programs/winevdm/Makefile.in,
	  programs/winhelp/Makefile.in, programs/winver/Makefile.in,
	  programs/wordpad/Makefile.in, server/Makefile.in, tools/Makefile.in,
	  tools/widl/Makefile.in, tools/winebuild/Makefile.in,
	  tools/winedump/Makefile.in, tools/winegcc/Makefile.in,
	  tools/wmc/Makefile.in, tools/wrc/Makefile.in:
	makefiles: Generate the dependencies line to avoid some code duplication.

2006-09-13  Alexandre Julliard <julliard@winehq.org>

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

----------------------------------------------------------------
2006-09-13  Alexandre Julliard <julliard@winehq.org>

	* programs/msiexec/msiexec.c:
	msiexec: Ignore failure to create the service if it already exists.

2006-09-13  Marcus Meissner <marcus@beiboot.franken.de>

	* documentation/README.de:
	README.de: Updated comment on support libraries to match English.

	* documentation/README.de:
	README.de: Mention kernel 2.6.

2006-09-13  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c:
	wintrust: Add CryptSIPAddProvider calls to the registration.

2006-09-13  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msipriv.h, dlls/msi/msiquery.c, dlls/msi/table.c,
	  dlls/msi/tests/db.c:
	msi: Fix a couple of test cases for MsiDatabaseIsTablePersistent.

2006-09-13  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/dinput_main.c:
	dinput: Create/destroy hook thread from DirectInput.

2006-09-13  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Add a test for ALTER TABLE.

	* dlls/msi/database.c, dlls/msi/tests/db.c:
	msi: Fix database creation.

	* dlls/msi/Makefile.in, dlls/msi/action.c, dlls/msi/action.h,
	  dlls/msi/font.c:
	msi: Split the font registration code out into a separate file.

2006-09-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dxdiagn/provider.c:
	dxdiagn: Cast-qual warning fix.

2006-09-13  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/gdi/freetype.c:
	gdi32: Fix init_system_links() for non-localized font name.

	* dlls/gdi/freetype.c:
	gdi32: Fix wrong break statement use.

2006-09-12  Paul Chitescu <pchitescu@voip.null.ro>

	* dlls/wined3d/directx.c:
	wined3d: Avoid crashing when renderer returns no name.

2006-09-12  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/db.c:
	msi: Add more join tests.

	* dlls/msi/dialog.c:
	msi: Show the available drives in the VolumeCostList control.

2006-09-12  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/ole32/stg_stream.c:
	ole32: Silence a compiler warning about unused variable in StgStreamImpl_Write().

2006-09-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/cabinet/tests/extract.c, dlls/msi/tests/package.c,
	  dlls/shell32/tests/shlfileop.c, include/wine/test.h:
	tests: Moved some compatibility defines to wine/test.h.

2006-09-12  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmstyle/auditiontrack.c, dlls/dmstyle/chordtrack.c,
	  dlls/dmstyle/commandtrack.c, dlls/dmstyle/dmutils.c,
	  dlls/dmstyle/motiftrack.c, dlls/dmstyle/mutetrack.c,
	  dlls/dmstyle/styletrack.c:
	dmstyle: Print 64bit integers with wine_dbgstr_longlong.

2006-09-12  Marcus Meissner <marcus@beiboot.franken.de>

	* README:
	README: Update for kernel 2.6.

2006-09-12  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/mshtml/rsrc.rc:
	mshtml: Add version resource.

	* dlls/shdocvw/version.rc:
	shdocvw: Update version info.

2006-09-12  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c:
	wintrust: Use the return values of the registration functions.

	* dlls/wintrust/register.c:
	wintrust: We do care about errors during this kind of registration.

	* dlls/wintrust/register.c:
	wintrust: Simplify registration by using WintrustAddDefaultForUsage.

2006-09-13  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/database.c, dlls/msi/msipriv.h, dlls/msi/msiquery.c,
	  dlls/msi/tests/db.c:
	msi: Delete databases we create but never commit.

2006-09-12  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Fix left-over reference to kernel directory.

2006-09-12  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c, dlls/wintrust/tests/register.c:
	wintrust: Implemented WintrustAddDefaultForUsage.

	* dlls/wintrust/tests/Makefile.in, dlls/wintrust/tests/register.c:
	wintrust: Added tests for WintrustAddDefaultForUsage.

	* dlls/wintrust/register.c, dlls/wintrust/wintrust.spec,
	  include/wintrust.h:
	wintrust: Added stubbed WintrustAddDefaultForUsage.

2006-09-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/secur32/dispatcher.c:
	secur32: Use _exit instead of exit in child process to avoid flushing things
	twice.

	* dlls/crypt32/tests/encode.c:
	crypt32: Comment out an unreliable test.

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fixed and simplified the opengl extension registration.

2006-09-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/Makefile.in, dlls/opengl32/wgl.c, dlls/opengl32/wgl_ext.c,
	  dlls/opengl32/wgl_ext.h:
	opengl32: Remove unused code.

2006-09-11  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/winex11.drv.spec, include/wine/wgl.h:
	winex11.drv: Move WGL extension code to winex11.drv.

2006-09-12  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/kernel/Makefile.in, dlls/kernel/actctx.c, dlls/kernel/atom.c,
	  dlls/kernel/atom16.c, dlls/kernel/change.c, dlls/kernel/comm.c,
	  dlls/kernel/comm.drv.spec, dlls/kernel/computername.c,
	  dlls/kernel/console.c, dlls/kernel/console_private.h,
	  dlls/kernel/cpu.c, dlls/kernel/debugger.c, dlls/kernel/dosmem.c,
	  dlls/kernel/editline.c, dlls/kernel/environ.c, dlls/kernel/error16.c,
	  dlls/kernel/except.c, dlls/kernel/fiber.c, dlls/kernel/file.c,
	  dlls/kernel/file16.c, dlls/kernel/format_msg.c,
	  dlls/kernel/global16.c, dlls/kernel/heap.c, dlls/kernel/instr.c,
	  dlls/kernel/kernel.rc, dlls/kernel/kernel16.c,
	  dlls/kernel/kernel16_private.h, dlls/kernel/kernel32.spec,
	  dlls/kernel/kernel_main.c, dlls/kernel/kernel_private.h,
	  dlls/kernel/krnl386.exe.spec, dlls/kernel/lcformat.c,
	  dlls/kernel/local16.c, dlls/kernel/locale.c,
	  dlls/kernel/locale_rc.rc, dlls/kernel/lzexpand.c,
	  dlls/kernel/messages/winerr_enu.mc, dlls/kernel/module.c,
	  dlls/kernel/ne_module.c, dlls/kernel/ne_segment.c,
	  dlls/kernel/nls/afk.nls, dlls/kernel/nls/ara.nls,
	  dlls/kernel/nls/arb.nls, dlls/kernel/nls/are.nls,
	  dlls/kernel/nls/arg.nls, dlls/kernel/nls/arh.nls,
	  dlls/kernel/nls/ari.nls, dlls/kernel/nls/arj.nls,
	  dlls/kernel/nls/ark.nls, dlls/kernel/nls/arl.nls,
	  dlls/kernel/nls/arm.nls, dlls/kernel/nls/aro.nls,
	  dlls/kernel/nls/arq.nls, dlls/kernel/nls/ars.nls,
	  dlls/kernel/nls/art.nls, dlls/kernel/nls/aru.nls,
	  dlls/kernel/nls/ary.nls, dlls/kernel/nls/aze.nls,
	  dlls/kernel/nls/azl.nls, dlls/kernel/nls/bel.nls,
	  dlls/kernel/nls/bgr.nls, dlls/kernel/nls/brf.nls,
	  dlls/kernel/nls/cat.nls, dlls/kernel/nls/chs.nls,
	  dlls/kernel/nls/cht.nls, dlls/kernel/nls/cor.nls,
	  dlls/kernel/nls/csy.nls, dlls/kernel/nls/cym.nls,
	  dlls/kernel/nls/dan.nls, dlls/kernel/nls/dea.nls,
	  dlls/kernel/nls/dec.nls, dlls/kernel/nls/del.nls,
	  dlls/kernel/nls/des.nls, dlls/kernel/nls/deu.nls,
	  dlls/kernel/nls/div.nls, dlls/kernel/nls/ell.nls,
	  dlls/kernel/nls/ena.nls, dlls/kernel/nls/enb.nls,
	  dlls/kernel/nls/enc.nls, dlls/kernel/nls/eng.nls,
	  dlls/kernel/nls/eni.nls, dlls/kernel/nls/enj.nls,
	  dlls/kernel/nls/enl.nls, dlls/kernel/nls/enp.nls,
	  dlls/kernel/nls/ens.nls, dlls/kernel/nls/ent.nls,
	  dlls/kernel/nls/enu.nls, dlls/kernel/nls/enw.nls,
	  dlls/kernel/nls/enz.nls, dlls/kernel/nls/eox.nls,
	  dlls/kernel/nls/esa.nls, dlls/kernel/nls/esb.nls,
	  dlls/kernel/nls/esc.nls, dlls/kernel/nls/esd.nls,
	  dlls/kernel/nls/ese.nls, dlls/kernel/nls/esf.nls,
	  dlls/kernel/nls/esg.nls, dlls/kernel/nls/esh.nls,
	  dlls/kernel/nls/esi.nls, dlls/kernel/nls/esl.nls,
	  dlls/kernel/nls/esm.nls, dlls/kernel/nls/esn.nls,
	  dlls/kernel/nls/eso.nls, dlls/kernel/nls/esp.nls,
	  dlls/kernel/nls/esr.nls, dlls/kernel/nls/ess.nls,
	  dlls/kernel/nls/esu.nls, dlls/kernel/nls/esv.nls,
	  dlls/kernel/nls/esy.nls, dlls/kernel/nls/esz.nls,
	  dlls/kernel/nls/eti.nls, dlls/kernel/nls/euq.nls,
	  dlls/kernel/nls/far.nls, dlls/kernel/nls/fin.nls,
	  dlls/kernel/nls/fos.nls, dlls/kernel/nls/fra.nls,
	  dlls/kernel/nls/frb.nls, dlls/kernel/nls/frc.nls,
	  dlls/kernel/nls/frl.nls, dlls/kernel/nls/frm.nls,
	  dlls/kernel/nls/frs.nls, dlls/kernel/nls/gae.nls,
	  dlls/kernel/nls/gdh.nls, dlls/kernel/nls/gdv.nls,
	  dlls/kernel/nls/glc.nls, dlls/kernel/nls/guj.nls,
	  dlls/kernel/nls/heb.nls, dlls/kernel/nls/hin.nls,
	  dlls/kernel/nls/hrv.nls, dlls/kernel/nls/hun.nls,
	  dlls/kernel/nls/hye.nls, dlls/kernel/nls/ind.nls,
	  dlls/kernel/nls/isl.nls, dlls/kernel/nls/ita.nls,
	  dlls/kernel/nls/its.nls, dlls/kernel/nls/jpn.nls,
	  dlls/kernel/nls/kan.nls, dlls/kernel/nls/kat.nls,
	  dlls/kernel/nls/kkz.nls, dlls/kernel/nls/knk.nls,
	  dlls/kernel/nls/kor.nls, dlls/kernel/nls/kyr.nls,
	  dlls/kernel/nls/lth.nls, dlls/kernel/nls/lvi.nls,
	  dlls/kernel/nls/mar.nls, dlls/kernel/nls/mki.nls,
	  dlls/kernel/nls/mon.nls, dlls/kernel/nls/msb.nls,
	  dlls/kernel/nls/msl.nls, dlls/kernel/nls/nlb.nls,
	  dlls/kernel/nls/nld.nls, dlls/kernel/nls/nls.nls,
	  dlls/kernel/nls/non.nls, dlls/kernel/nls/nor.nls,
	  dlls/kernel/nls/pan.nls, dlls/kernel/nls/plk.nls,
	  dlls/kernel/nls/ptb.nls, dlls/kernel/nls/ptg.nls,
	  dlls/kernel/nls/rom.nls, dlls/kernel/nls/rus.nls,
	  dlls/kernel/nls/san.nls, dlls/kernel/nls/sky.nls,
	  dlls/kernel/nls/slv.nls, dlls/kernel/nls/sqi.nls,
	  dlls/kernel/nls/srb.nls, dlls/kernel/nls/srl.nls,
	  dlls/kernel/nls/sve.nls, dlls/kernel/nls/svf.nls,
	  dlls/kernel/nls/swk.nls, dlls/kernel/nls/syr.nls,
	  dlls/kernel/nls/tam.nls, dlls/kernel/nls/tel.nls,
	  dlls/kernel/nls/tha.nls, dlls/kernel/nls/trk.nls,
	  dlls/kernel/nls/ttt.nls, dlls/kernel/nls/ukr.nls,
	  dlls/kernel/nls/urd.nls, dlls/kernel/nls/uzb.nls,
	  dlls/kernel/nls/uzl.nls, dlls/kernel/nls/vit.nls,
	  dlls/kernel/nls/wal.nls, dlls/kernel/nls/zhh.nls,
	  dlls/kernel/nls/zhi.nls, dlls/kernel/nls/zhm.nls,
	  dlls/kernel/oldconfig.c, dlls/kernel/path.c, dlls/kernel/powermgnt.c,
	  dlls/kernel/process.c, dlls/kernel/profile.c, dlls/kernel/pthread.c,
	  dlls/kernel/registry16.c, dlls/kernel/relay16.c,
	  dlls/kernel/resource.c, dlls/kernel/resource16.c,
	  dlls/kernel/selector.c, dlls/kernel/snoop16.c, dlls/kernel/stress.c,
	  dlls/kernel/stress.spec, dlls/kernel/string.c, dlls/kernel/sync.c,
	  dlls/kernel/syslevel.c, dlls/kernel/system.c,
	  dlls/kernel/system.drv.spec, dlls/kernel/tape.c, dlls/kernel/task.c,
	  dlls/kernel/tests/Makefile.in, dlls/kernel/tests/alloc.c,
	  dlls/kernel/tests/atom.c, dlls/kernel/tests/change.c,
	  dlls/kernel/tests/codepage.c, dlls/kernel/tests/comm.c,
	  dlls/kernel/tests/console.c, dlls/kernel/tests/directory.c,
	  dlls/kernel/tests/drive.c, dlls/kernel/tests/environ.c,
	  dlls/kernel/tests/file.c, dlls/kernel/tests/format_msg.c,
	  dlls/kernel/tests/generated.c, dlls/kernel/tests/heap.c,
	  dlls/kernel/tests/locale.c, dlls/kernel/tests/mailslot.c,
	  dlls/kernel/tests/module.c, dlls/kernel/tests/path.c,
	  dlls/kernel/tests/pipe.c, dlls/kernel/tests/process.c,
	  dlls/kernel/tests/profile.c, dlls/kernel/tests/sync.c,
	  dlls/kernel/tests/thread.c, dlls/kernel/tests/time.c,
	  dlls/kernel/tests/timer.c, dlls/kernel/tests/toolhelp.c,
	  dlls/kernel/tests/version.c, dlls/kernel/tests/virtual.c,
	  dlls/kernel/tests/volume.c, dlls/kernel/thread.c,
	  dlls/kernel/thunk.c, dlls/kernel/time.c, dlls/kernel/toolhelp.c,
	  dlls/kernel/toolhelp.h, dlls/kernel/toolhelp.spec,
	  dlls/kernel/toolhelp16.c, dlls/kernel/utthunk.c,
	  dlls/kernel/version.c, dlls/kernel/version.rc,
	  dlls/kernel/version16.rc, dlls/kernel/virtual.c,
	  dlls/kernel/volume.c, dlls/kernel/vxd.c, dlls/kernel/win87em.c,
	  dlls/kernel/win87em.spec, dlls/kernel/windebug.c,
	  dlls/kernel/windebug.spec, dlls/kernel/wowthunk.c,
	  dlls/kernel32/Makefile.in, dlls/kernel32/actctx.c,
	  dlls/kernel32/atom.c, dlls/kernel32/atom16.c, dlls/kernel32/change.c,
	  dlls/kernel32/comm.c, dlls/kernel32/comm.drv.spec,
	  dlls/kernel32/computername.c, dlls/kernel32/console.c,
	  dlls/kernel32/console_private.h, dlls/kernel32/cpu.c,
	  dlls/kernel32/debugger.c, dlls/kernel32/dosmem.c,
	  dlls/kernel32/editline.c, dlls/kernel32/environ.c,
	  dlls/kernel32/error16.c, dlls/kernel32/except.c,
	  dlls/kernel32/fiber.c, dlls/kernel32/file.c, dlls/kernel32/file16.c,
	  dlls/kernel32/format_msg.c, dlls/kernel32/global16.c,
	  dlls/kernel32/heap.c, dlls/kernel32/instr.c, dlls/kernel32/kernel.rc,
	  dlls/kernel32/kernel16.c, dlls/kernel32/kernel16_private.h,
	  dlls/kernel32/kernel32.spec, dlls/kernel32/kernel_main.c,
	  dlls/kernel32/kernel_private.h, dlls/kernel32/krnl386.exe.spec,
	  dlls/kernel32/lcformat.c, dlls/kernel32/local16.c,
	  dlls/kernel32/locale.c, dlls/kernel32/locale_rc.rc,
	  dlls/kernel32/lzexpand.c, dlls/kernel32/module.c,
	  dlls/kernel32/ne_module.c, dlls/kernel32/ne_segment.c,
	  dlls/kernel32/nls/afk.nls, dlls/kernel32/nls/ara.nls,
	  dlls/kernel32/nls/arb.nls, dlls/kernel32/nls/are.nls,
	  dlls/kernel32/nls/arg.nls, dlls/kernel32/nls/arh.nls,
	  dlls/kernel32/nls/ari.nls, dlls/kernel32/nls/arj.nls,
	  dlls/kernel32/nls/ark.nls, dlls/kernel32/nls/arl.nls,
	  dlls/kernel32/nls/arm.nls, dlls/kernel32/nls/aro.nls,
	  dlls/kernel32/nls/arq.nls, dlls/kernel32/nls/ars.nls,
	  dlls/kernel32/nls/art.nls, dlls/kernel32/nls/aru.nls,
	  dlls/kernel32/nls/ary.nls, dlls/kernel32/nls/aze.nls,
	  dlls/kernel32/nls/azl.nls, dlls/kernel32/nls/bel.nls,
	  dlls/kernel32/nls/bgr.nls, dlls/kernel32/nls/brf.nls,
	  dlls/kernel32/nls/cat.nls, dlls/kernel32/nls/chs.nls,
	  dlls/kernel32/nls/cht.nls, dlls/kernel32/nls/cor.nls,
	  dlls/kernel32/nls/csy.nls, dlls/kernel32/nls/cym.nls,
	  dlls/kernel32/nls/dan.nls, dlls/kernel32/nls/dea.nls,
	  dlls/kernel32/nls/dec.nls, dlls/kernel32/nls/del.nls,
	  dlls/kernel32/nls/des.nls, dlls/kernel32/nls/deu.nls,
	  dlls/kernel32/nls/div.nls, dlls/kernel32/nls/ell.nls,
	  dlls/kernel32/nls/ena.nls, dlls/kernel32/nls/enb.nls,
	  dlls/kernel32/nls/enc.nls, dlls/kernel32/nls/eng.nls,
	  dlls/kernel32/nls/eni.nls, dlls/kernel32/nls/enj.nls,
	  dlls/kernel32/nls/enl.nls, dlls/kernel32/nls/enp.nls,
	  dlls/kernel32/nls/ens.nls, dlls/kernel32/nls/ent.nls,
	  dlls/kernel32/nls/enu.nls, dlls/kernel32/nls/enw.nls,
	  dlls/kernel32/nls/enz.nls, dlls/kernel32/nls/eox.nls,
	  dlls/kernel32/nls/esa.nls, dlls/kernel32/nls/esb.nls,
	  dlls/kernel32/nls/esc.nls, dlls/kernel32/nls/esd.nls,
	  dlls/kernel32/nls/ese.nls, dlls/kernel32/nls/esf.nls,
	  dlls/kernel32/nls/esg.nls, dlls/kernel32/nls/esh.nls,
	  dlls/kernel32/nls/esi.nls, dlls/kernel32/nls/esl.nls,
	  dlls/kernel32/nls/esm.nls, dlls/kernel32/nls/esn.nls,
	  dlls/kernel32/nls/eso.nls, dlls/kernel32/nls/esp.nls,
	  dlls/kernel32/nls/esr.nls, dlls/kernel32/nls/ess.nls,
	  dlls/kernel32/nls/esu.nls, dlls/kernel32/nls/esv.nls,
	  dlls/kernel32/nls/esy.nls, dlls/kernel32/nls/esz.nls,
	  dlls/kernel32/nls/eti.nls, dlls/kernel32/nls/euq.nls,
	  dlls/kernel32/nls/far.nls, dlls/kernel32/nls/fin.nls,
	  dlls/kernel32/nls/fos.nls, dlls/kernel32/nls/fra.nls,
	  dlls/kernel32/nls/frb.nls, dlls/kernel32/nls/frc.nls,
	  dlls/kernel32/nls/frl.nls, dlls/kernel32/nls/frm.nls,
	  dlls/kernel32/nls/frs.nls, dlls/kernel32/nls/gae.nls,
	  dlls/kernel32/nls/gdh.nls, dlls/kernel32/nls/gdv.nls,
	  dlls/kernel32/nls/glc.nls, dlls/kernel32/nls/guj.nls,
	  dlls/kernel32/nls/heb.nls, dlls/kernel32/nls/hin.nls,
	  dlls/kernel32/nls/hrv.nls, dlls/kernel32/nls/hun.nls,
	  dlls/kernel32/nls/hye.nls, dlls/kernel32/nls/ind.nls,
	  dlls/kernel32/nls/isl.nls, dlls/kernel32/nls/ita.nls,
	  dlls/kernel32/nls/its.nls, dlls/kernel32/nls/jpn.nls,
	  dlls/kernel32/nls/kan.nls, dlls/kernel32/nls/kat.nls,
	  dlls/kernel32/nls/kkz.nls, dlls/kernel32/nls/knk.nls,
	  dlls/kernel32/nls/kor.nls, dlls/kernel32/nls/kyr.nls,
	  dlls/kernel32/nls/lth.nls, dlls/kernel32/nls/lvi.nls,
	  dlls/kernel32/nls/mar.nls, dlls/kernel32/nls/mki.nls,
	  dlls/kernel32/nls/mon.nls, dlls/kernel32/nls/msb.nls,
	  dlls/kernel32/nls/msl.nls, dlls/kernel32/nls/nlb.nls,
	  dlls/kernel32/nls/nld.nls, dlls/kernel32/nls/nls.nls,
	  dlls/kernel32/nls/non.nls, dlls/kernel32/nls/nor.nls,
	  dlls/kernel32/nls/pan.nls, dlls/kernel32/nls/plk.nls,
	  dlls/kernel32/nls/ptb.nls, dlls/kernel32/nls/ptg.nls,
	  dlls/kernel32/nls/rom.nls, dlls/kernel32/nls/rus.nls,
	  dlls/kernel32/nls/san.nls, dlls/kernel32/nls/sky.nls,
	  dlls/kernel32/nls/slv.nls, dlls/kernel32/nls/sqi.nls,
	  dlls/kernel32/nls/srb.nls, dlls/kernel32/nls/srl.nls,
	  dlls/kernel32/nls/sve.nls, dlls/kernel32/nls/svf.nls,
	  dlls/kernel32/nls/swk.nls, dlls/kernel32/nls/syr.nls,
	  dlls/kernel32/nls/tam.nls, dlls/kernel32/nls/tel.nls,
	  dlls/kernel32/nls/tha.nls, dlls/kernel32/nls/trk.nls,
	  dlls/kernel32/nls/ttt.nls, dlls/kernel32/nls/ukr.nls,
	  dlls/kernel32/nls/urd.nls, dlls/kernel32/nls/uzb.nls,
	  dlls/kernel32/nls/uzl.nls, dlls/kernel32/nls/vit.nls,
	  dlls/kernel32/nls/wal.nls, dlls/kernel32/nls/winerr_enu.mc,
	  dlls/kernel32/nls/zhh.nls, dlls/kernel32/nls/zhi.nls,
	  dlls/kernel32/nls/zhm.nls, dlls/kernel32/oldconfig.c,
	  dlls/kernel32/path.c, dlls/kernel32/powermgnt.c,
	  dlls/kernel32/process.c, dlls/kernel32/profile.c,
	  dlls/kernel32/pthread.c, dlls/kernel32/registry16.c,
	  dlls/kernel32/relay16.c, dlls/kernel32/resource.c,
	  dlls/kernel32/resource16.c, dlls/kernel32/selector.c,
	  dlls/kernel32/snoop16.c, dlls/kernel32/stress.c,
	  dlls/kernel32/stress.spec, dlls/kernel32/string.c,
	  dlls/kernel32/sync.c, dlls/kernel32/syslevel.c,
	  dlls/kernel32/system.c, dlls/kernel32/system.drv.spec,
	  dlls/kernel32/tape.c, dlls/kernel32/task.c,
	  dlls/kernel32/tests/Makefile.in, dlls/kernel32/tests/alloc.c,
	  dlls/kernel32/tests/atom.c, dlls/kernel32/tests/change.c,
	  dlls/kernel32/tests/codepage.c, dlls/kernel32/tests/comm.c,
	  dlls/kernel32/tests/console.c, dlls/kernel32/tests/directory.c,
	  dlls/kernel32/tests/drive.c, dlls/kernel32/tests/environ.c,
	  dlls/kernel32/tests/file.c, dlls/kernel32/tests/format_msg.c,
	  dlls/kernel32/tests/generated.c, dlls/kernel32/tests/heap.c,
	  dlls/kernel32/tests/locale.c, dlls/kernel32/tests/mailslot.c,
	  dlls/kernel32/tests/module.c, dlls/kernel32/tests/path.c,
	  dlls/kernel32/tests/pipe.c, dlls/kernel32/tests/process.c,
	  dlls/kernel32/tests/profile.c, dlls/kernel32/tests/sync.c,
	  dlls/kernel32/tests/thread.c, dlls/kernel32/tests/time.c,
	  dlls/kernel32/tests/timer.c, dlls/kernel32/tests/toolhelp.c,
	  dlls/kernel32/tests/version.c, dlls/kernel32/tests/virtual.c,
	  dlls/kernel32/tests/volume.c, dlls/kernel32/thread.c,
	  dlls/kernel32/thunk.c, dlls/kernel32/time.c,
	  dlls/kernel32/toolhelp.c, dlls/kernel32/toolhelp.h,
	  dlls/kernel32/toolhelp.spec, dlls/kernel32/toolhelp16.c,
	  dlls/kernel32/utthunk.c, dlls/kernel32/version.c,
	  dlls/kernel32/version.rc, dlls/kernel32/version16.rc,
	  dlls/kernel32/virtual.c, dlls/kernel32/volume.c, dlls/kernel32/vxd.c,
	  dlls/kernel32/win87em.c, dlls/kernel32/win87em.spec,
	  dlls/kernel32/windebug.c, dlls/kernel32/windebug.spec,
	  dlls/kernel32/wowthunk.c, programs/winetest/Makefile.in,
	  tools/make_makefiles:
	kernel32: Renamed the kernel directory to kernel32.
	Also get rid of the kernel/messages subdirectory.

	* libs/wine/config.c:
	libwine: Avoid a compiler warning on Solaris.

2006-09-12  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Add some more tests for MsiOpenDatabase.

2006-09-11  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/oleaut32/hash.c:
	oleaut32: Replace a loop with a simple computation.

	* tools/widl/hash.c:
	widl: Replace a loop with a simple computation.

2006-09-11  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c:
	wintrust: Remove some TRACE's as they are now covered by WintrustAddActionID.

	* dlls/wintrust/register.c:
	wintrust: Removed stray backslash.

	* dlls/wintrust/register.c:
	wintrust: Typo in TRACE.

	* dlls/wintrust/register.c:
	wintrust: Simplify registrations by using WintrustAddActionID.

2006-09-11  James Hawkins <truiken@gmail.com>

	* dlls/msi/classes.c:
	msi: Don't try to register a class if a COM server file is not provided.

2006-09-11  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmsynth/synth.c, dlls/dmsynth/synthsink.c:
	dmsynth: Print 64bit integers with wine_dbgstr_longlong.

2006-09-11  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Conformance test for function variant:VarIdiv.

	* dlls/oleaut32/variant.c:
	oleaut32: Fixes for function variant:VarIdiv.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Conformance test for function variant:VarDiv.

	* dlls/oleaut32/variant.c:
	oleaut32: Fixes for function variant:VarDiv.

2006-09-11  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/surface.c, dlls/wined3d/utils.c:
	wined3d: Cleanup the surface loading code a bit.
	- Separate allocation and uploading of textures.
	- Move common code for allocating, uploading and downloading textures
	into separate functions.
	- Set the correct format and type for DXT textures.

	* dlls/d3d8/device.c:
	d3d8: Free the shader handle table.

2006-09-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c:
	ntdll: Remove the IOKit code and reuse the FreeBSD implementation for MacOS.
	FILE_GetDeviceInfo needs to be efficient, and IOKit is much too slow
	to be used here.

	* tools/wrc/newstruc.c, tools/wrc/parser.h, tools/wrc/parser.l,
	  tools/wrc/parser.y, tools/wrc/utils.c, tools/wrc/utils.h,
	  tools/wrc/wrc.c:
	wrc: Change the prefix on bison-generated names to avoid the name-prefix
	directive.

	* tools/wmc/mcl.c, tools/wmc/mcy.y, tools/wmc/utils.c, tools/wmc/utils.h,
	  tools/wmc/wmc.c, tools/wmc/wmc.h:
	wmc: Change the prefix on bison-generated names to avoid the name-prefix
	directive.

	* tools/widl/header.c, tools/widl/parser.h, tools/widl/parser.l,
	  tools/widl/parser.y, tools/widl/proxy.c, tools/widl/utils.c,
	  tools/widl/utils.h, tools/widl/widl.c:
	widl: Change the prefix on bison-generated names to avoid the name-prefix
	directive.

	* libs/wpp/ppl.l, libs/wpp/ppy.y, libs/wpp/preproc.c, libs/wpp/wpp.c,
	  libs/wpp/wpp_private.h:
	wpp: Change the prefix on bison-generated names to avoid the name-prefix
	directive.

	* programs/winedbg/dbg.y, programs/winedbg/debug.l:
	winedbg: Change the prefix on bison-generated names to avoid the name-prefix
	directive.

2006-09-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/msi/cond.y, dlls/msi/sql.y:
	msi: Change the prefix on bison-generated names to avoid the name-prefix
	directive.

	* Make.rules.in, programs/winedbg/dbg.y, tools/widl/parser.y,
	  tools/wmc/mcy.y, tools/wrc/parser.y:
	Make.rules: Set the default prefix for bison files from the file basename.

	* Make.rules.in, dlls/msi/Makefile.in, libs/wpp/Makefile.in,
	  programs/winedbg/Makefile.in, tools/widl/Makefile.in,
	  tools/wmc/Makefile.in, tools/wrc/Makefile.in:
	makefiles: List bison dependencies explicitly for parallel makes, since older
	bisons don't support --defines.

2006-08-29  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/gdi/freetype.c:
	gdi32: Fix logical error of italic, bold determination.

	* dlls/gdi/gdiobj.c:
	gdi32: Fix DefaultGuiFont name string for Korean Charset.

2006-09-11  Detlef Riekenberg <wine.dev@web.de>

	* configure, configure.ac, dlls/Makefile.in, dlls/localspl/Makefile.in,
	  dlls/localspl/localspl.spec, dlls/localspl/localspl_main.c:
	localspl: Add minimal localspl.dll.

2006-09-10  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/dinput_main.c, dlls/dinput/dinput_private.h:
	dinput: Move hook_thread from device to DirectInput.

2006-09-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/cpu.c:
	kernel: Better CPU detection on MacOS.

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Avoid compile errors in the non-OpenGL case.

	* Makefile.in:
	Makefile: Don't build all the tools before make depend, only build makedep
	itself.

	* dlls/Maketest.rules.in:
	Maketest.rules: Don't require testlist.c to be built before make depend.

	* dlls/shell32/Makefile.in:
	shell32: Don't build authors.c for make depend, it has no dependencies anyway.

	* programs/winetest/.gitignore, programs/winetest/Makefile.in,
	  programs/winetest/dist.rc, programs/winetest/maketest,
	  programs/winetest/winetest.rc, tools/make_makefiles:
	winetest: Generate the list of test resources in make_makefiles.
	Only include test revision information in the distributed binary.

	* programs/winetest/main.c, programs/winetest/maketest,
	  programs/winetest/util.c, programs/winetest/winetest.h:
	winetest: Store the test name as the resource name instead of in a separate
	string table.

2006-09-11  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/storage32.c:
	ole32: Add a check for a condition where a stream has an invalid size
	and so there aren't enough blocks in the chain to write data into.

	* dlls/ole32/storage32.c:
	ole32: Remove some assertions in the stuctured storage code by
	returning error codes to the caller and by handling the error
	condition.

	* dlls/ole32/stg_stream.c, dlls/ole32/storage32.c, dlls/ole32/storage32.h:
	ole32: Convert the *_{Read,Write}At structured storage functions to
	return HRESULTs instead of BOOLs so that errors can be properly
	propagated from lower levels.

	* dlls/ole32/hglobalstream.c, dlls/ole32/tests/hglobalstream.c:
	ole32: Fix the IStream_SetSize function for HGLOBAL streams to ignore HighPart.

	* dlls/ole32/tests/storage32.c:
	ole32: Make an ok message match the name of the function it is testing.

	* dlls/ole32/hglobalstream.c, dlls/ole32/tests/hglobalstream.c:
	ole32: Fix the return value of the HGLOBAL stream IStream_LockRegion function.

	* dlls/ole32/hglobalstream.c, dlls/ole32/tests/hglobalstream.c:
	ole32: Fix the HGLOBAL stream IStream_Read function to return S_OK even if
	not all of the requested bytes were available.

	* dlls/ole32/tests/Makefile.in, dlls/ole32/tests/hglobalstream.c:
	ole32: Add tests for the stream object returned by CreateStreamOnHGlobal.

2006-09-11  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c:
	wintrust: Change the name of the strings to not confuse them with the functions
	that are present in wintrust.

	* dlls/wintrust/register.c:
	wintrust: Use the return value of CryptRegisterOIDFunction.

2006-09-01  Jeff Latimer <lats@yless4u.com.au>

	* dlls/gdi/tests/font.c:
	gdi: Fix test for GetGlyphIndicesW on non Unicode systems.

2006-08-30  James Liggett <jrliggett@cox.net>

	* programs/explorer/Makefile.in, programs/explorer/systray.c:
	explorer: Add support for tooltips for system tray icons.
	Based on the original systray implementation by Kai Morich
	<kai.morich@bigfoot.de>.

2006-08-29  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/winex11.drv.spec:
	winex11.drv: Import glx makecurrent/wglsharelists.

	* dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/winex11.drv.spec:
	winex11.drv: Import glx context code.

2006-09-10  Marcus Meissner <marcus@jet.franken.de>

	* dlls/cabinet/fci.c, dlls/gdi/bidi.c, dlls/gdi/enhmfdrv/bitblt.c,
	  dlls/gphoto2.ds/ui.c, dlls/imagehlp/imagehlp_main.c,
	  dlls/kernel/atom.c, dlls/kernel/kernel16.c, dlls/mscms/icc.c,
	  dlls/msi/tokenize.c, dlls/msvcrt/ctype.c, dlls/netapi32/browsr.c,
	  dlls/netapi32/nbnamecache.c, dlls/ntdll/wcstring.c,
	  dlls/rsaenh/implglue.c, dlls/user/driver.c, dlls/user/lstr.c,
	  dlls/uxtheme/stylemap.c, dlls/wineps.drv/encode.c,
	  dlls/winex11.drv/clipping.c, dlls/winex11.drv/codepage.c,
	  dlls/winspool.drv/wspool.c, dlls/wsock32/protocol.c:
	Removes all unnecessary WINE_DEFAULT_DEBUG_CHANNEL and respective wine/debug.h
	includes.

2006-09-10  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmusic/buffer.c, dlls/dmusic/clock.c, dlls/dmusic/dmusic_main.c:
	dmusic: Print 64bit integers with wine_dbgstr_longlong.

2006-09-10  Detlef Riekenberg <wine.dev@web.de>

	* programs/taskmgr/trayicon.c:
	taskmgr: Remove dead code in trayicon.c (Coverity).

	* dlls/winspool.drv/tests/info.c:
	winspool: String cleanup in the tests.

2006-09-10  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/d3d8/d3d8.spec, dlls/d3d8/d3d8_main.c, dlls/d3d8/tests/Makefile.in,
	  dlls/d3d8/tests/d3d8_main.c:
	d3d8: Better stub for ValidateVertexShader + tests.

2006-09-08  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h,
	  dlls/riched20/editstr.h, dlls/riched20/paint.c:
	riched20: Rewrite of scrolling and some redrawing code.
	Replaces duplicated scrolling code with re-usable functions.
	Removes excessive boundary checking on scroll code, since that's done
	in the scrollbar control anyways.
	Properly separates repaint calls based on what has changed.
	Send EN_UPDATE and EN_CHANGE at the right places.
	Only call EnsureVisible on changes, not all repaints.

2006-09-07  Francois Gouget <fgouget@free.fr>

	* dlls/wintrust/wintrust_main.c, include/wintrust.h:
	wintrust: In recent SDKs, WinVerifyTrust()'s last parameter is a void pointer.

2006-09-10  Alexandre Julliard <julliard@winehq.org>

	* Make.rules.in, Makefile.in, tools/makedep.c:
	makedep: For generated headers, parse the source idl instead.
	This avoids having to generate all the headers before make depend.

2006-09-08  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shellole.c:
	shell32: Remove the unused shell allocator.

	* dlls/shell32/shellole.c, dlls/shell32/shellord.c:
	shell32: Document the shell32 "mini-COM" functions.

2006-09-09  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw.c, dlls/wined3d/device.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	ddraw: Pass the fullscreen flag to wined3d.

	* dlls/ddraw/ddcomimpl.h, dlls/ddraw/ddraw.c,
	  dlls/ddraw/tests/ddrawmodes.c:
	ddraw: Double buffered primary surfaces can only be created in EXLUSIVE mode.

	* dlls/ddraw/surface.c:
	ddraw: Return DDERR_NOPALETTEATTACHED if no palette is attached.

2006-09-09  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/computername.c:
	kernel: Remove dead code in computername.c.

2006-09-09  Damjan Jovanovic <dj015@yahoo.com>

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: Fixed returns values and added a test for SetupDiOpenClassRegKeyExW.

2006-09-08  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dswave/dswave_main.c:
	dswave: Print 64bit integers with wine_dbgstr_longlong.

2006-09-08  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/main.c, dlls/crypt32/tests/main.c:
	crypt32: Fix the adding of pwszIsFunctionName and pwszIsFunctionNameFmt2.

2006-09-10  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dplayx/dplay.c, dlls/dplayx/name_server.c,
	  dlls/dplayx/name_server.h:
	dplayx: Cast-qual warnings fix.

2006-09-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dnsapi/query.c:
	dnsapi: Cast-qual warnings fix.

2006-09-08  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dinput/device.c:
	dinput: Cast-qual warnings fix.

	* dlls/ddraw/texture.c:
	ddraw: Cast-qual warning fix.

2006-09-09  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/msvfw32/msvfw32_Fr.rc, programs/clock/Fr.rc,
	  programs/cmdlgtst/Fr.rc, programs/notepad/Fr.rc,
	  programs/progman/Fr.rc, programs/regedit/Fr.rc,
	  programs/taskmgr/Fr.rc, programs/uninstaller/Fr.rc,
	  programs/winefile/Fr.rc, programs/winemine/Fr.rc,
	  programs/winhelp/Fr.rc:
	Assorted French translation improvements.

	* programs/winecfg/Fr.rc:
	winecfg: French translation update.

2006-09-08  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/hhctrl.ocx/Fr.rc, dlls/hhctrl.ocx/hhctrl.rc:
	hhctrl: New French translation.

	* dlls/winspool.drv/Fr.rc, dlls/winspool.drv/winspool.rc:
	winspool.drv: New French translation.

	* dlls/mshtml/Fr.rc:
	mshtml: Updated French translation.

2006-09-08  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/tests/main.c:
	crypt32/tests: Added tests for CryptSIPAddProvider and CryptSIPRemoveProvider.

	* dlls/crypt32/main.c:
	crypt32: Implemented CryptSIPRemoveProvider.

	* dlls/crypt32/main.c:
	crypt32: Add documentation.

2006-09-08  Jeff Latimer <lats@yless4u.com.au>

	* dlls/gdi/tests/metafile.c:
	gdi: Change the metafile.c test to use sprintf instead of snprintf for
	portability.

2006-09-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c:
	kernel: An unavailable address for the PE file can cause ERROR_NOT_ENOUGH_MEMORY
	too.

	* Make.rules.in, Makefile.in, dlls/Makedll.rules.in,
	  documentation/Makefile.in:
	makefiles: Make sure that all phony targets depend on 'dummy'.

	* dlls/Makedll.rules.in, programs/Makeprog.rules.in:
	makefiles: Avoid empty variables in substitutions, it's broken on BSD make.

	* fonts/Makefile.in:
	fonts: Avoid using the $< make variable in explicit rules.

	* tools/Makefile.in, tools/makedep.c:
	makedep: Support for new naming scheme for lex files.

	* .gitignore, Make.rules.in, dlls/msi/Makefile.in, libs/wpp/Makefile.in,
	  programs/winedbg/Makefile.in, programs/winhelp/Makefile.in,
	  tools/widl/Makefile.in, tools/wmc/Makefile.in, tools/wrc/Makefile.in:
	makefiles: Add global rules for bison and lex files.
	Also build the .c and .h files separately to allow parallel makes.

	* programs/winedbg/dbg.y:
	winedbg: Allow building without debug support in the parser.

	* tools/wrc/wrc.c:
	wrc: Allow building without debug support in the parser.

	* tools/wmc/wmc.c:
	wmc: Allow building without debug support in the parser.

	* tools/widl/widl.c:
	widl: Allow building without debug support in the parser.

	* programs/winhelp/Makefile.in, programs/winhelp/macro.lex.l:
	winhelp: Specify the lex options directly in the source file.

	* programs/winedbg/Makefile.in, programs/winedbg/debug.l:
	winedbg: Specify the lex options directly in the source file.

	* dlls/msi/Makefile.in, dlls/msi/cond.y, dlls/msi/sql.y:
	msi: Specify the bison name prefix directly in the source file.

	* libs/wpp/Makefile.in, libs/wpp/ppy.y:
	libs/wpp: Specify the bison name prefix directly in the source file.

2006-09-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dbghelp/module.c, dlls/dbghelp/pe_module.c, dlls/dbghelp/symbol.c:
	dbghelp: Cast-qual warnings fix.

	* dlls/kernel/virtual.c, include/winbase.h:
	kernel: Constify a formal parameter.

2006-09-08  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, dlls/oleaut32/Makefile.in,
	  dlls/oleaut32/olepicture.c, dlls/oleaut32/ungif.c,
	  dlls/oleaut32/ungif.h, include/config.h.in:
	oleaut32: Include minimal ungif source to remove dependency on libungif.

2006-09-08  Detlef Riekenberg <wine.dev@web.de>

	* dlls/netapi32/apibuf.c, dlls/netapi32/tests/apibuf.c:
	netapi32: Avoid NULL access in NetApiBufferAllocate, with test.

2006-09-08  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/main.c:
	crypt32: Bail out on registry errors and return the error (if any).

	* dlls/crypt32/main.c:
	crypt32: Add documentation.

	* dlls/crypt32/main.c:
	crypt32: Change the order of writing to the registry.

	* dlls/crypt32/main.c:
	crypt32: Bail out on registry errors and return the error (if any).

	* dlls/crypt32/main.c:
	crypt32: Added some input validation.

2006-09-04  Konstantin Petrov <argentum@office.etersoft.ru>

	* configure, configure.ac, dlls/Makefile.in, dlls/svrapi/Makefile.in,
	  dlls/svrapi/svrapi.spec, dlls/svrapi/svrapi_main.c,
	  include/Makefile.in, include/lmcons.h, include/svrapi.h:
	svrapi: Added a stub svrapi.dll.

2006-09-02  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Manage loaded monitors in a list.

	* dlls/winspool.drv/info.c, dlls/winspool.drv/tests/info.c:
	winspool: Minimal load/unload printmonitors; use it to get a test working.

2006-09-02  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/user/sysparams.c:
	user: ChangeDisplaySettings virtual desktop mode handling fix.

2006-09-08  Alexandre Julliard <julliard@winehq.org>

	* tools/wine.inf:
	wine.inf: Register msiexec.

2006-09-07  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Conformance test for function variant:VarPow.

	* dlls/oleaut32/variant.c:
	oleaut32: Fixes for function variant:VarPow.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Conformance test for function variant:VarAnd.

	* dlls/oleaut32/variant.c:
	oleaut32: Fixes for function variant:VarAnd.

2006-09-08  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/ntdll/tests/info.c:
	ntdll/tests: Print 64bit integers as two 32 bit integers.

2006-09-08  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Add more tests for temporary columns.

	* dlls/msi/sql.y, dlls/msi/tests/db.c, dlls/msi/tokenize.c:
	msi: Fix the TEMPORARY keyword for columns.

	* dlls/msi/tests/db.c:
	msi: Add a test for MsiDatabaseIsTablePersistent.

	* dlls/msi/msiquery.c, include/msiquery.h:
	msi: Fix the prototype of MsiDatabaseIsTablePersistent to match the SDK.

	* dlls/msi/string.c:
	msi: Increase the size of the string table.

	* dlls/msi/action.c:
	msi: Split code to create a random package name into a separate function.

	* dlls/msi/table.c:
	msi: Use msi_string_lookup_id instead of msi_id2stringW where possible.

2006-09-08  Detlef Riekenberg <wine.dev@web.de>

	* dlls/ntdll/file.c:
	ntdll: attr is never NULL inside NtCreateFile.

2006-09-07  James Hawkins <truiken@gmail.com>

	* dlls/msi/join.c, dlls/msi/tests/db.c:
	msi: Allow non-key columns to be used with the join query.

	* dlls/msi/tests/db.c:
	msi: Add tests for MSI SQL join queries.

2006-09-07  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/typegen.c, tools/widl/typelib.c, tools/widl/widltypes.h:
	widl: Add more complete pointer handling to write_typeformatstring_var.

2006-09-07  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/crypt.c, dlls/gdi/tests/font.c, dlls/kernel/sync.c,
	  dlls/ole32/tests/compobj.c, dlls/opengl32/wgl.c,
	  dlls/opengl32/wgl_ext.c, dlls/rpcrt4/rpcrt4_main.c,
	  dlls/wined3d/directx.c, dlls/winex11.drv/opengl.c,
	  dlls/wintrust/tests/register.c, dlls/ws2_32/socket.c,
	  programs/view/init.c:
	Assorted spelling fixes.

	* dlls/ntdll/ntdll.spec:
	ntdll: Document a Microsoft spelling mistake so we know it is not to be fixed.

	* dlls/setupapi/setupapi.spec:
	setupapi: Document a Microsoft spelling mistake so we know it is not to be fixed.

	* dlls/tapi32/line.c:
	tapi32: Fix spelling of a local variable.

	* dlls/ole32/stg_stream.c:
	ole32: Fix spelling of a couple of local variables.

	* dlls/shell32/shlmenu.c:
	shell32: Fix spelling of a local variable.

	* dlls/oleaut32/variant.c, dlls/oleaut32/variant.h:
	oleaut32: Fix spelling of VARIANT_NUMBER_CHARS's separator fields.

	* include/ntstatus.h, include/sddl.h:
	include: Document some Microsoft spelling mistakes so we know they are not to
	be fixed.

	* include/shlobj.h:
	shell32: Fix name of a constant.

	* include/mcx.h:
	include: Fix the name of a MODEMSETTINGS field.

	* include/imagehlp.h:
	imagehlp: Fix the name of the ADDRESS_MODE enum.

2006-09-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advpack/files.c:
	advpack: Cast-qual warnings fix.

2006-09-07  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/ntlm.c:
	secur32: Fix DecryptMessage for the dummy case.

	* dlls/secur32/ntlm.c, dlls/secur32/secur32_priv.h,
	  dlls/secur32/tests/ntlm.c, dlls/secur32/util.c:
	secur32: Fix generation of the session key.

2006-09-07  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/oid.c:
	crypt32: Don't crash when tracing is on and a numeric identifier is passed.

	* dlls/crypt32/oid.c:
	crypt32: Add some documentation.

2006-09-07  Albert Lee <trisk@jhu.edu>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Implement and test Script{Apply, Record}DigitSubstitution.

2006-09-06  Detlef Riekenberg <wine.dev@web.de>

	* configure, configure.ac:
	configure.ac: Display a hint when CAPI is not supported.

2006-09-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/signal_i386.c:
	ntdll: Added sysctl to make the signal stack per-thread on MacOS.

2006-09-06  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/device.c:
	wined3d: Simplify setting the stencil renderstate.

	* dlls/wininet/ftp.c:
	wininet: Fix fd leak on failure case.

	* dlls/winmm/wineoss/midi.c:
	wineoss: Remove "please report" from a trace.

	* programs/winefile/winefile.c:
	winefile: Fix the display of free disk space in the statusbar.

	* programs/regedit/framewnd.c:
	regedit: Also refresh the listview.

	* dlls/winmm/mci.c, dlls/winmm/tests/Makefile.in, dlls/winmm/tests/mci.c:
	winmm: Prevent NULL dereference in MCI_Close and add testcase for it.

2006-09-02  Hippocrates Sendoukas <hsendoukas@hotmail.com>

	* dlls/riched20/editor.c:
	riched20: WM_CONTEXTMENU fix for custom context menus.

	* dlls/riched20/caret.c:
	riched20: ME_SetSelection -1 to -1 behavior fix.

2006-08-30  James Hawkins <truiken@gmail.com>

	* dlls/crypt32/decode.c:
	crypt32: Simplify CRYPT_AsnDecodeUnicodeNameValueInternal, getting rid of
	a warning.

	* dlls/crypt32/decode.c:
	crypt32: Simplify CRYPT_AsnDecodeNameValueInternal, getting rid of a warning.

2006-09-03  James Hawkins <truiken@gmail.com>

	* dlls/msi/custom.c:
	msi: Store the CustomActionData for deferred custom actions.

	* dlls/msi/dialog.c:
	msi: Add the ability to change directories in the DirectoryList control.

2006-09-01  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Add initial implementation of the DirectoryList control.

	* dlls/msi/dialog.c:
	msi: Load and display the VolumeCostList control's column headers.

2006-08-31  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c, dlls/msi/msipriv.h:
	msi: Store and use the center point of the dialog window in between dialogs.

	* dlls/msi/dialog.c:
	msi: Verify the path in the PathEdit control.

	* dlls/msi/dialog.c:
	msi: Search for the browse dialog controls by type instead of name.

	* dlls/msi/dialog.c:
	msi: Provide the control to the dialog_update function for the case
	when the control isn't attached to the dialog yet.

2006-08-30  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/db.c:
	msi: Add more tests for the _Streams table.

2006-09-03  Dan Kegel <dank@kegel.com>

	* configure, configure.ac, dlls/msvcrt/process.c, documentation/PACKAGING,
	  programs/.gitignore, programs/Makefile.in, programs/cmd/Cs.rc,
	  programs/cmd/De.rc, programs/cmd/En.rc, programs/cmd/Es.rc,
	  programs/cmd/Fr.rc, programs/cmd/Ja.rc, programs/cmd/Ko.rc,
	  programs/cmd/Makefile.in, programs/cmd/Nl.rc, programs/cmd/No.rc,
	  programs/cmd/Pl.rc, programs/cmd/Pt.rc, programs/cmd/README,
	  programs/cmd/Ru.rc, programs/cmd/Si.rc, programs/cmd/Tr.rc,
	  programs/cmd/batch.c, programs/cmd/builtins.c,
	  programs/cmd/directory.c, programs/cmd/wcmd.h,
	  programs/cmd/wcmdmain.c, programs/cmd/wcmdrc.rc, programs/make_progs,
	  programs/wcmd/Cs.rc, programs/wcmd/De.rc, programs/wcmd/En.rc,
	  programs/wcmd/Es.rc, programs/wcmd/Fr.rc, programs/wcmd/Ja.rc,
	  programs/wcmd/Ko.rc, programs/wcmd/Makefile.in, programs/wcmd/Nl.rc,
	  programs/wcmd/No.rc, programs/wcmd/Pl.rc, programs/wcmd/Pt.rc,
	  programs/wcmd/README, programs/wcmd/Ru.rc, programs/wcmd/Si.rc,
	  programs/wcmd/Tr.rc, programs/wcmd/batch.c, programs/wcmd/builtins.c,
	  programs/wcmd/directory.c, programs/wcmd/wcmd.h,
	  programs/wcmd/wcmdmain.c, programs/wcmd/wcmdrc.rc, tools/wine.inf:
	programs/wcmd: Rename to programs/cmd.

2006-09-06  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/static.c:
	user: Use computed icon rectangle if SS_CENTERIMAGE style is set.

2006-09-06  James Hawkins <truiken@gmail.com>

	* tools/winapi/msvcmaker:
	msvcmaker: Remove a reference to libs/unicode in msvcmaker.

	* dlls/msi/tests/format.c:
	msi: Add many more MsiFormatRecord tests.

	* dlls/msi/tests/format.c:
	msi: Fix two MsiFormatRecord tests.

2006-09-05  James Hawkins <truiken@gmail.com>

	* dlls/msi/format.c, dlls/msi/tests/format.c:
	msi: Use the TargetPath of a file if the file doesn't exist in MsiFormatRecord.

	* dlls/msi/format.c, dlls/msi/tests/format.c:
	msi: Fix creation of the default format in MsiFormatRecord.

	* dlls/msi/tests/format.c, dlls/msi/tests/package.c:
	msi: Add more tests for MsiFormatRecord.

2006-09-05  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/directx.c, dlls/wined3d/utils.c, include/wine/wined3d_gl.h:
	wined3d: Add support for R32F and R16F texture formats.

2006-09-04  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/wined3d_private.h:
	wined3d: Remove unused field: Surface.textureName.

	* dlls/wined3d/device.c:
	wined3d: Clean up ActiveRender.

2006-09-04  Paul Chitescu <pchitescu@voip.null.ro>

	* dlls/wined3d/device.c:
	wined3d: Avoid crashing when ProcessVertices is called with NULL vertex
	declaration.

2006-09-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comdlg32/colordlg.c, dlls/comdlg32/filedlg.c,
	  dlls/comdlg32/filedlg31.c, dlls/comdlg32/filedlgbrowser.c,
	  dlls/comdlg32/fontdlg.c:
	comdlg32: Cast-qual warnings fix.

2006-09-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comdlg32/colordlg16.c, dlls/comdlg32/filedlg16.c,
	  dlls/comdlg32/finddlg16.c, dlls/comdlg32/fontdlg16.c,
	  dlls/comdlg32/printdlg16.c:
	comdlg32: Cast-qual warnings fix.

2006-09-05  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/crypt32/tests/oid.c:
	crypt32/tests: Cast-qual warning fix.

	* dlls/crypt32/encode.c, dlls/crypt32/protectdata.c, dlls/crypt32/str.c:
	crypt32: Cast-qual warnings fix.

2006-09-03  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shfolder/Makefile.in, dlls/shfolder/version.rc:
	shfolder: Add version resource.

	* dlls/shlwapi/tests/path.c:
	shlwapi: Simple test for UrlCanonicalizeA.

2006-09-01  András Kovács <andras@csevego.net>

	* dlls/wined3d/device.c:
	wined3d: Implement BlendFactor renderstate.

	* dlls/wined3d/device.c:
	wined3d: Remove unnecessary glBlendColor in TextureFactor renderstate.

2006-09-06  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/oid.c:
	crypt32: Set last error on registry errors.

	* dlls/wintrust/register.c:
	wintrust: Add a bunch of CryptRegisterOIDFunction calls.

	* include/wintrust.h:
	wintrust.h: Added several defines needed for the registration of wintrust.dll.

	* dlls/wintrust/register.c:
	wintrust: Only register actions when
	HKLM\Software\Microsoft\Cryptography\Providers\Trust can be opened.

2006-09-05  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c:
	wintrust: Register WINTRUST_ACTION_GENERIC_CHAIN_VERIFY.

	* dlls/wintrust/register.c:
	wintrust: Register DRIVER_ACTION_VERIFY.

	* dlls/wintrust/register.c:
	wintrust: Register OFFICESIGN_ACTION_VERIFY.

	* dlls/wintrust/register.c:
	wintrust: Register HTTPSPROV_ACTION.

	* dlls/wintrust/register.c:
	wintrust: Register WINTRUST_ACTION_TRUSTPROVIDER_TEST.

	* dlls/wintrust/register.c:
	wintrust: Register WINTRUST_ACTION_GENERIC_CERT_VERIFY.

	* dlls/wintrust/register.c:
	wintrust: Register WIN_SPUB_ACTION_PUBLISHED_SOFTWARE_NOBADUI.

	* dlls/wintrust/register.c:
	wintrust: Register WIN_SPUB_ACTION_PUBLISHED_SOFTWARE.

	* dlls/wintrust/register.c, tools/wine.inf:
	wintrust: Register WINTRUST_ACTION_GENERIC_VERIFY_V2.

2006-09-02  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/softpub.h:
	softpub.h: Added several new defines for provider functions.

2006-09-01  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/wintrust.h:
	wintrust.h: Added a new define for a provider function.

2006-08-30  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/kernel/resource16.c, include/wine/winuser16.h:
	kernel: Constify some formal parameters.

2006-09-01  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Add a short test for transforms.

	* dlls/msi/tests/db.c:
	msi: Make opening and closing 4000 handle into two tests, not 20000.

2006-08-31  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/oleobj.c:
	ole32: Allocate memory for a copy of the ptd member of FORMATETC in
	DataAdviseHolder_Advise since there is no requirement for the
	application to keep this memory valid for the lifetime of the
	connection.

	* dlls/ole32/oleobj.c:
	ole32: Don't send data changes in DataAdviseHolder_Advise for
	ADVF_PRIMEFIRST connections if we are connected to a data object,
	since it will send the data change for us.

	* dlls/ole32/defaulthandler.c:
	ole32: DefaultHandler_GetData and DefaultHandler_QueryGetData should
	both defer to the real data object if the cached versions fail and we
	are running.

	* dlls/ole32/rpc.c:
	ole32: Add a reference to the stream in RPC_StartLocalServer since we
	release a reference to it when the local server thread dies.

	* dlls/ole32/tests/ole2.c:
	ole32: Add a test for OleLoad.

	* dlls/ole32/ole2.c:
	ole32: Do a QueryInterface for IOleLink in OleLoad, like native does.

	* dlls/ole32/ole2.c:
	ole32: Re-order the function calls in OleLoad to match native.
	Call IOleObject_GetMiscStatus like OleCreate and native do.

	* dlls/ole32/tests/Makefile.in, dlls/ole32/tests/ole2.c:
	ole32: Add tests for OleCreate.

	* dlls/ole32/ole2.c:
	ole32: Call IRunnableObject_Run and IOleCache_Cache from OleCreate if the
	render option is specified as draw or format.
	This is documented on MSDN and is confirmed by tests.

	* dlls/ole32/ole2.c:
	ole32: Call IOleObject_GetMiscStatus in OleCreate if a client site is passed in.

	* dlls/ole32/ole2.c:
	ole32: Re-structure OleCreate to match to order of calls that native does.
	Get rid of hres1 since all failures are returned. Cleanup pUnk on
	failure and make sure to return NULL in ppvObj.

	* dlls/ole32/ole2.c:
	ole32: Set the storage's class ID in OleCreate.

	* dlls/rpcrt4/cproxy.c:
	rpcrt4: Raise an exception if IRpcChannelBuffer_GetBuffer fails.
	Make StdProxy_GetIID and StdProxy_GetChannel return void.
	Don't bother checking for This and pRpcChannelBuffer being NULL as
	native doesn't.

2006-08-31  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/database.c, dlls/msi/tests/db.c:
	msi: Implement MsiDatabaseExport.

	* dlls/msi/msipriv.h, dlls/msi/msiquery.c:
	msi: Create MSI_ViewGetColumnInfo for accessing MsiViewGetColumnInfo internally.

	* dlls/msi/insert.c, dlls/msi/tests/db.c:
	msi: Make sure there's a value for each column when inserting data.

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Validate database fields before inserting them.

	* dlls/msi/insert.c, dlls/msi/msipriv.h, dlls/msi/record.c,
	  dlls/msi/select.c:
	msi: Create a function to copy record fields, use it to order INSERT fields
	correctly.

	* dlls/msi/tests/record.c:
	msi: Add a few more tests for MSI_NULL_INTEGER.

	* dlls/msi/create.c, dlls/msi/tests/db.c:
	msi: Check that column names are unique when creating a table.

2006-08-31  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/cpsf.c, dlls/rpcrt4/cpsf.h, dlls/rpcrt4/cstub.c,
	  dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Add delegating stub support.

	* dlls/rpcrt4/cpsf.c, dlls/rpcrt4/cpsf.h, dlls/rpcrt4/cstub.c:
	rpcrt4: Add infrastructure to create and manage a variable sized vtbl
	that will be used as the server object for delegated stubs.

2006-08-31  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c:
	wintrust: Moved the generation of the guidstring to a separate function.

	* dlls/wintrust/register.c, dlls/wintrust/tests/register.c,
	  include/wintrust.h:
	wintrust: Implementation of WintrustAddActionID.

2006-08-30  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/Makefile.in, dlls/wintrust/register.c,
	  dlls/wintrust/tests/register.c:
	wintrust: Implementation of WintrustRemoveActionID.

2006-09-01  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.y, tools/widl/proxy.c, tools/widl/typelib.c:
	widl: Sanity check string and pointer attrs.  Don't assign string as type.

	* tools/widl/parser.y:
	widl: Handle more pointer types in get_struct_type.

2006-08-29  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.y, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/typegen.c, tools/widl/widltypes.h:
	widl: Remove checks for typedefs that always fail.

2006-08-29  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c:
	advpack: Add the regsvr action to the SetupInstallFromInfSection call.

	* dlls/advpack/install.c, dlls/advpack/tests/install.c:
	advpack: Get the proper working directory in install_init.

2006-08-30  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/cstub.c, dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Tests on NdrCStdStubBuffer_Release to show that we shouldn't call
	Disconnect.
	Also call IPSFactoryBuffer_Release on the 2nd arg, rather than on
	This->pPSFactory.

	* dlls/rpcrt4/cstub.c:
	rpcrt4: Tidy up CStdStubBuffer_QueryInterface.

	* dlls/rpcrt4/cstub.c:
	rpcrt4: Tidy up CStdStubBuffer_AddRef,Release.

2006-08-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Don't crash if we can't find a control.

	* dlls/msi/tokenize.c:
	msi: Use a binary search to find sql keywords.

	* dlls/ddraw/main.c, dlls/ddraw/tests/ddrawmodes.c,
	  dlls/ddraw/tests/dsurface.c, dlls/ddraw/tests/refcount.c:
	ddraw: Make tests pass when OpenGL libraries aren't present.

2006-08-29  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/lsa.c:
	advapi32: Fix lsa tests on windows98.

2006-08-29  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.y:
	widl: Generate an error for "int f(void a)".

	* tools/widl/header.c:
	widl: Print pointers more aesthetically in generated header.

	* tools/widl/client.c, tools/widl/parser.y, tools/widl/proxy.c,
	  tools/widl/typelib.c, tools/widl/widltypes.h:
	widl: Add an is_ptr function.

	* tools/widl/parser.y, tools/widl/typelib.c, tools/widl/typelib.h,
	  tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: Factor the entry_t structure.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y,
	  tools/widl/typelib.c, tools/widl/typelib.h, tools/widl/widltypes.h,
	  tools/widl/write_msft.c:
	widl: Use type_t for typedefs, not var_t.  Simplify representation.

	* tools/widl/parser.y:
	widl: Generate names for tagless structs, unions and enums.

2006-08-29  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/cproxy.c:
	rpcrt4: Make the reference counting in the standard proxy thread-safe.

	* dlls/rpcrt4/cstub.c:
	rpcrt4: Fix NdrStubGetBuffer to use the IRpcChannelBuffer object since
	IRpcChannelBuffer_GetBuffer may put extra data onto the wire for ORPC
	calls.

	* dlls/rpcrt4/cproxy.c:
	rpcrt4: Remove some unused code.

	* dlls/rpcrt4/Makefile.in, dlls/rpcrt4/ndr_clientserver.c,
	  dlls/rpcrt4/ndr_midl.c:
	rpcrt4: Rename ndr_midl.c to ndr_clientserver.c to more accurately
	idenitfy what the code contained does - it is a number of helpers for
	generated client/server code.

	* dlls/rpcrt4/cproxy.c, dlls/rpcrt4/cpsf.h, dlls/rpcrt4/cstub.c,
	  dlls/rpcrt4/ndr_midl.c:
	rpcrt4: Move NdrStub* functions to cstub.c and move NdrProxy*
	functions to cproxy.c since both sets of functions depend on the
	implementations of the standard stubs and proxies.

	* server/file.c:
	server: Translate errnos ENFILE and EMFILE to STATUS_TOO_MANY_OPENED_FILES,
	which seems to be more appropriate and matches the errno translation
	in ntdll.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Delay the creation of the stub object for IDispatch until it is
	actually used.

	* dlls/oleaut32/typelib.c:
	oleaut32: Fix a leak of the module reference count.

2006-08-30  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/propsheet.c, dlls/comctl32/toolbar.c,
	  dlls/comctl32/trackbar.c:
	comctl32: Cast-qual warnings fix.

2006-08-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advpack/files.c:
	advpack: Cast-qual warnings fix.

2006-08-29  Renu Rajput <renu.rajput@gmail.com>

	* dlls/comdlg32/filedlg.c:
	comdlg: Send missing CDN_FOLDERCHANGE.

2006-09-01  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/wincrypt.h:
	wincrypt.h: Add new OID.

	* include/softpub.h:
	softpub.h: Add a GUID.

	* include/wintrust.h:
	wintrust.h: Add a GUID.

2006-08-29  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c:
	wintrust: Add some documentation.

	* dlls/wintrust/tests/register.c:
	wintrust: Add some extra tests for WintrustRemoveActionID.

2006-08-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/join.c:
	msi: Fix a memory leak.

	* dlls/msi/handle.c, dlls/msi/msi_main.c, dlls/msi/msipriv.h:
	msi: Free the handle table on PROCESS_DETACH.

	* dlls/msi/tests/package.c:
	msi: Fix test compilation with MSVC6.

	* dlls/msi/package.c, dlls/msi/tests/package.c:
	msi: Properties are case sensitive.

2006-08-29  Paul Vriens <Paul.Vriens@xs4all.nl>

	* configure, configure.ac, dlls/Makefile.in,
	  dlls/wintrust/tests/Makefile.in, dlls/wintrust/tests/register.c,
	  programs/winetest/Makefile.in:
	wintrust: Add framework and initial tests.

2006-08-28  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c, dlls/wintrust/wintrust.spec:
	wintrust: Add some register stubs.

	* dlls/wintrust/Makefile.in, dlls/wintrust/register.c,
	  dlls/wintrust/wintrust_main.c:
	wintrust: Move register related functions to a separate file.

2006-08-28  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/header.c:
	widl: Add the rest of the pointer types to write_type.

2006-08-28  Marcus Meissner <marcus@jet.franken.de>

	* programs/explorer/explorer.c, programs/regedit/hexedit.c,
	  programs/regedit/listview.c, programs/winedbg/display.c,
	  programs/winedbg/source.c, programs/winedbg/stack.c:
	Remove some more unused debugging channels.

2006-08-26  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Add a test for IRpcStubBuffer_Connect on a delegated stub.
	This shows that we have a vtbl ptr at (void**)This-2 that is passed to
	the base interface's IRpcStubBuffer_Connect.  This vtbl should
	presumably forward calls to the real object's vtbl.  We can't simply
	pass the real object to the base interface's stub, as the real
	object's QI may not provide us with the base interface.

2006-08-28  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/cpsf.h, dlls/rpcrt4/ndr_ole.c:
	rpcrt4: Add a helper function to create a stub.

2006-08-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/vertexshader.c:
	wined3d: Apply the half pixel correction for shaders too.

2006-08-28  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Use msi_dialog_dup_property where appropriate.

	* dlls/msi/dialog.c:
	msi: Use the respective update functions when creating the Browse dialog control.

	* dlls/msi/dialog.c:
	msi: Update the DirectoryCombo control in response to the DirectoryListUp event.

	* dlls/msi/dialog.c:
	msi: Update the PathEdit control in response to the DirectoryListUp event.

	* dlls/msi/dialog.c:
	msi: Highlight the text in the PathEdit control.

2006-08-28  Dan Kegel <dank@kegel.com>

	* dlls/msi/action.c, dlls/msi/database.c, dlls/msi/msi.c,
	  dlls/msi/msiquery.c, dlls/msi/package.c, dlls/msi/preview.c,
	  dlls/msi/suminfo.c:
	msi: Callers of alloc_msihandle should handle failure.

	* dlls/msi/handle.c, dlls/msi/msipriv.h, dlls/msi/tests/db.c:
	msi: Remove limit on number of handles.

	* dlls/msi/tests/db.c:
	msi/tests: Add test to verify we can create 4000 msi handles.

2006-08-28  Robert Shearman <rob@codeweavers.com>

	* dlls/quartz/videorenderer.c:
	quartz: Use the absolute height of the bitmap format as a negative values
	simply means it is a top-down bitmap.

	* dlls/ole32/rpc.c:
	ole32: Return errors if the attempt to start a LocalService object fails.

	* dlls/ole32/compobj.c:
	ole32: AppId is a value under the clsid key, rather than a key.

	* dlls/ole32/compobj.c, dlls/ole32/git.c, dlls/ole32/ole2.c,
	  dlls/ole32/regsvr.c, dlls/ole32/stubmanager.c:
	ole32: Fix functions defined without specifying argument types by changing
	them to "(void)".

2006-08-27  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Import ConvertPixelFormatWGLtoGLX from opengl32.

2006-08-27  Brian Chang <brianch@seas.ucla.edu>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: EM_EXSETSEL fixes and conformance tests.

2006-08-28  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, tools/Makefile.in, tools/winapi/Makefile.in:
	tools: Get rid of the winapi makefile, it's not used anyway.

	* Make.rules.in, Makefile.in, dlls/Makefile.in, dlls/Makeimplib.rules.in,
	  dlls/Maketest.rules.in, dlls/advapi32/Makefile.in,
	  dlls/advpack/Makefile.in, dlls/cabinet/Makefile.in,
	  dlls/comcat/Makefile.in, dlls/comctl32/Makefile.in,
	  dlls/comdlg32/Makefile.in, dlls/crypt32/Makefile.in,
	  dlls/d3d8/Makefile.in, dlls/d3d9/Makefile.in, dlls/ddraw/Makefile.in,
	  dlls/dinput/Makefile.in, dlls/dnsapi/Makefile.in,
	  dlls/dsound/Makefile.in, dlls/gdi/Makefile.in,
	  dlls/hlink/Makefile.in, dlls/infosoft/Makefile.in,
	  dlls/iphlpapi/Makefile.in, dlls/kernel/Makefile.in,
	  dlls/lz32/Makefile.in, dlls/make_dlls, dlls/mapi32/Makefile.in,
	  dlls/mlang/Makefile.in, dlls/msacm32/Makefile.in,
	  dlls/mscms/Makefile.in, dlls/mshtml/Makefile.in,
	  dlls/msi/Makefile.in, dlls/msvcrt/Makefile.in,
	  dlls/msvcrtd/Makefile.in, dlls/msxml3/Makefile.in,
	  dlls/netapi32/Makefile.in, dlls/ntdll/Makefile.in,
	  dlls/ole32/Makefile.in, dlls/oleaut32/Makefile.in,
	  dlls/psapi/Makefile.in, dlls/quartz/Makefile.in,
	  dlls/riched20/Makefile.in, dlls/rpcrt4/Makefile.in,
	  dlls/rsabase/Makefile.in, dlls/rsaenh/Makefile.in,
	  dlls/secur32/Makefile.in, dlls/setupapi/Makefile.in,
	  dlls/shdocvw/Makefile.in, dlls/shell32/Makefile.in,
	  dlls/shlwapi/Makefile.in, dlls/urlmon/Makefile.in,
	  dlls/user/Makefile.in, dlls/usp10/Makefile.in,
	  dlls/uxtheme/Makefile.in, dlls/version/Makefile.in,
	  dlls/wininet/Makefile.in, dlls/winmm/Makefile.in,
	  dlls/winspool.drv/Makefile.in, dlls/ws2_32/Makefile.in:
	makefiles: Only run test and documentation targets in directories that need them.

	* programs/winetest/Makefile.in, tools/make_makefiles:
	make_makefiles: Generate the tests list in programs/winetest/Makefile.in.

	* dlls/make_dlls, programs/make_progs, tools/make_makefiles:
	tools: Added make_makefiles tool that updates the list in configure.ac and
	runs make_dlls and make_progs.

	* dlls/kernel/cpu.c:
	kernel: Get rid of useless trace.

2006-08-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msipriv.h, dlls/msi/string.c, dlls/msi/table.c,
	  dlls/msi/tests/db.c:
	msi: Fix writing of long strings to the database.

	* dlls/msi/record.c:
	msi: Fix MsiRecordGetString for a null buffer and non-zero buffer length.

2006-08-27  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c:
	d3d8: Use proper handles for pixel shaders.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c:
	d3d8: Improve shader handle management.

2006-08-26  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/directx.c, dlls/wined3d/utils.c, include/wine/wined3d_gl.h:
	wined3d: Add support for A16B16G16R16F and A32B32G32R32F texture formats.

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

	* dlls/msi/msi_Ko.rc:
	msi: Updated Korean resource.

2006-08-27  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/stabs.c:
	dbghelp: Removed stabs dump facility now that we have it (for PE files)
	in winedump.

	* tools/winedump/debug.c, tools/winedump/main.c, tools/winedump/pe.c,
	  tools/winedump/winedump.h, tools/winedump/winedump.man.in:
	winedump: Added -G option to dump raw stabs information from PE files.

	* programs/winedbg/memory.c:
	winedbg: Native dbghelp generate long basic types, so handle them too.

2006-08-27  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/olecmd.c:
	mshtml: Added IDM_UNDERLINE implementation.

	* dlls/mshtml/olecmd.c:
	mshtml: Added IDM_ITALIC implementation.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/olecmd.c:
	mshtml: Added IDM_FONTNAME implementation.

2006-08-25  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Add a stub implementation of the VolumeCostList control.

	* dlls/msi/dialog.c, dlls/msi/events.c, dlls/msi/msipriv.h:
	msi: Add initial implementation of the DirectoryListUp event.

	* dlls/msi/dialog.c:
	msi: Add initial implementation of the DirectoryCombo control.

2006-08-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Find the correct sampler type for < 2.0 pshaders.

	* dlls/wined3d/surface.c:
	wined3d: Properly initialize a variable.

2006-08-26  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: Cast-qual warnings fix.

2006-08-27  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c:
	riched20: Remove two testing fixme's that were accidentally committed.

2006-08-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/combo.c:
	user: Do not force repainting on WM_WINDOWPOSCHANGED in combobox.
	- do not force repainting on WM_WINDOWPOSCHANGED in combobox, it
	breaks Z-order based painting.
	- do nothing in the combobox WM_ERASEBKGND handler do all painting in
	WM_PAINT like Windows does.

2006-08-27  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c:
	opengl: Fix Mesa/DRI regression.

2006-08-27  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/security.c:
	advapi32: Fix security tests to not crash on windows.

2006-08-26  Robert Reif <reif@earthlink.net>

	* dlls/kernel/locale.c:
	kernel32: Fix TRACE in WideCharToMultiByte to not cause exception with non-null
	terminated input.

2006-08-25  Frank Richter <frank.richter@gmail.com>

	* dlls/setupapi/queue.c:
	setupapi: Make do_file_copyW send "target newer" notifications.

	* dlls/kernel/profile.c, dlls/kernel/tests/profile.c:
	kernel: Add tests for GetPrivateProfileSectionNames. Make behaviour the same
	as observed on Windows XP.

2006-08-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/path.c:
	kernel: Fixed off-by-one error in GetShortPathNameW.

2006-08-26  Alexandre Julliard <julliard@winehq.org>

	* tools/wrc/genres.c, tools/wrc/newstruc.c, tools/wrc/parser.l,
	  tools/wrc/parser.y, tools/wrc/utils.c, tools/wrc/wrc.c:
	wrc: Get rid of xmalloc casts.

	* tools/wrc/genres.c, tools/wrc/newstruc.c, tools/wrc/newstruc.h,
	  tools/wrc/parser.y, tools/wrc/utils.c:
	wrc: xmalloc shouldn't initialize to zero, do that explicitly where needed.

	* tools/wmc/mcy.y, tools/wmc/utils.c, tools/wmc/wmc.c:
	wmc: Get rid of xmalloc casts.

	* tools/wmc/mcy.y, tools/wmc/utils.c:
	wmc: xmalloc shouldn't initialize to zero, do that explicitly where needed.

	* tools/widl/parser.y, tools/widl/typelib.c, tools/widl/utils.c,
	  tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: xmalloc shouldn't initialize to zero, do that explicitly where needed.

	* Make.rules.in, Makefile.in, dlls/Makedll.rules.in, dlls/Makefile.in,
	  dlls/checklink.c:
	makefiles: Get rid of the checklink rules, they no longer work.

2006-08-26  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/oleproxy.c:
	ole32: Call IRpcChannelBuffer_GetBuffer for the RemRelease case of
	Invoke, even though we are requesting a buffer size of 0 as we put
	extra data into the buffer in IRpcChannelBuffer_GetBuffer.

	* dlls/ole32/oleproxy.c:
	ole32: Use IRpcChannelBuffer_GetBuffer in the hand-made proxy/stubs
	instead of calling I_RpcGetBuffer as IRpcChannelBuffer_GetBuffer does
	some extra magic.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h:
	ole32: Add support for main-threaded apartments.
	A main-threaded apartment is the first single-threaded apartment in the
	process. It was designed to be used for legacy applications that don't
	want to think about threading at all, even if they are always called
	from the same context, as is the case for regular STAs.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/rpc.c:
	ole32: Move the opening of the AppId key for a clsid to a helper function.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h:
	ole32: CoGetClassObject should host a single-threaded object in a
	single-threaded apartment if executing in a multi-threaded apartment,
	if one exists.

	* dlls/ole32/compobj.c:
	ole32: Get the threading model value for inproc classes and output a
	fixme if we should create it in an apartment of another type.

2006-08-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advapi32/crypt.c, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/eventlog.c:
	advapi32: Cast-qual warnings fix.

2006-08-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/olecmd.c:
	mshtml: Better stub for QueryStatus(CGID_MSHTML).

	* dlls/mshtml/nsiface.idl, dlls/mshtml/olecmd.c:
	mshtml: Added nsICommandParams argument to do_ns_command.

2006-08-26  Robert Reif <reif@earthlink.net>

	* dlls/secur32/tests/secur32.c:
	secur32: Fix secur32 test to pass on windows.

2006-08-25  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: Fix LookupAccountSid and tests to pass on windows and wine.

	* dlls/advapi32/tests/lsa.c:
	advapi32: Fix lsa tests.

2006-08-26  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/shlwapi/shlwapi_Ko.rc:
	shlwapi: Updated Korean resource.

2006-08-25  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shlfileop.c:
	shell32: Fix a bug in SHELL_ConfirmW.
	Fix a bug introduced while changing the OK/Cancel to Yes/No.

2006-08-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/Makefile.in:
	winex11.drv: Remove no longer used all: target.

2006-08-25  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/typelib.c:
	oleview: Added data freeing in EnumFuncs function.

2006-08-25  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/quartz/avisplit.c, dlls/quartz/fourcc.h:
	quartz: Skip over INFO chunk in AVI file parsing.

2006-08-25  Marcus Meissner <marcus@jet.franken.de>

	* dlls/comctl32/theme_dialog.c, dlls/comctl32/theme_edit.c,
	  dlls/comctl32/theme_listbox.c:
	comctl32: Remove unneccessary default debug channels.

2006-08-25  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/device.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Use a common function for all D3DCMPFUNC -> GLenum conversions.

2006-08-25  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/package.c:
	msi: Set the ALLUSERS property to 1 always.

	* dlls/msi/alter.c:
	msi: Fix a memory leak.

	* dlls/msi/dialog.c:
	msi: Use msi_get_property_int rather than MSI_GetPropertyW.

2006-08-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fix a compiler warning when OpenGL is missing.

	* dlls/crypt32/tests/encode.c:
	crypt32/tests: Avoid sizeof in traces.

	* Make.rules.in, configure, configure.ac, loader/Makefile.in,
	  server/Makefile.in, tools/wmc/Makefile.in, tools/wrc/Makefile.in:
	configure: Set rpath on all executables that link to libwine.
	Also add the -multiply_defined suppress option for executables on MacOS.

	* configure, configure.ac:
	configure: Make sure timezone and daylight are variables.

	* aclocal.m4, configure, configure.ac:
	configure: Move cache handling into the WINE_TRY_CFLAGS macro.

	* configure, configure.ac:
	configure: Enable the -Wwrite-strings flag.

	* tools/winedump/main.c, tools/winedump/output.c,
	  tools/winedump/winedump.h:
	winedump: Get rid of the install script.

	* programs/make_progs:
	make_progs: Update the directory list in configure.ac too.

	* dlls/make_dlls:
	make_dlls: Update the directory list in configure.ac too.

2006-08-25  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

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

2006-08-24  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/header.c, tools/widl/parser.y, tools/widl/typelib.c,
	  tools/widl/widl.c, tools/widl/widltypes.h:
	widl: Remove usage of type_t ref field for base types; simplify code.

2006-08-24  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* tools/widl/parser.y:
	widl: Write-strings warning fix.

	* dlls/mshtml/nsiface.idl:
	mshtml: Write-strings warnings fix.

2006-08-25  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/helpers.c, dlls/msi/package.c:
	msi: Reimplement msi_dup_property and msi_get_property_int.

	* dlls/msi/msipriv.h, dlls/msi/package.c:
	msi: Store properties in a hash table, not the database.
	Use string insensitive comparisons for property names.

2006-08-24  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Fix the height of the line control window.

	* dlls/msi/dialog.c:
	msi: Add a stub implementation of the DirectoryList dialog control.

	* dlls/msi/dialog.c:
	msi: Add a stub implementation of the DirectoryCombo dialog control.

2006-08-25  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/softpub.h:
	softpub.h: Added some GUIDs.

2006-08-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Load projected textures in fragment shaders.

	* dlls/wined3d/drawprim.c, dlls/wined3d/pixelshader.c:
	wined3d: Compile pixel shaders in drawprim.

2006-08-24  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/riched32/Makefile.in, dlls/riched32/version.rc:
	riched32: Add version resource.

	* tools/wine.inf:
	wine.inf: Add a bunch of fake dlls.

2006-08-24  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/ntdll/version.c:
	ntdll: Print 64bit integers with wine_dbgstr_longlong.

2006-08-24  James Hawkins <truiken@gmail.com>

	* dlls/msi/helpers.c, dlls/msi/msi_Bg.rc, dlls/msi/msi_De.rc,
	  dlls/msi/msi_En.rc, dlls/msi/msi_Eo.rc, dlls/msi/msi_Es.rc,
	  dlls/msi/msi_Fi.rc, dlls/msi/msi_Fr.rc, dlls/msi/msi_Hu.rc,
	  dlls/msi/msi_It.rc, dlls/msi/msi_Ko.rc, dlls/msi/msi_Nl.rc,
	  dlls/msi/msi_No.rc, dlls/msi/msi_Pt.rc, dlls/msi/msi_Ru.rc,
	  dlls/msi/msi_Tr.rc, dlls/msi/package.c:
	msi: Inform the user with an error message when the MSI file path is invalid.

2006-08-24  Alexandre Julliard <julliard@winehq.org>

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

----------------------------------------------------------------
2006-08-24  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Fixed bug in previous OpenGL warning patch.

2006-08-17  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/Makefile.in, dlls/advapi32/tests/lsa.c:
	advapi32: Output information on failed LsaQueryInformationPolicy tests.

2006-08-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/table.c:
	msi: Fix strings with lengths that are exact multiples of 2^16.

2006-08-24  Jeff Latimer <lats@yless4u.com.au>

	* dlls/gdi/freetype.c, dlls/gdi/tests/font.c:
	gdi: Add missing glyph code to GetGlyphIndices and tests.

2006-08-24  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shell32_main.h, dlls/shell32/shlfileop.c:
	shell32: Use kernel functions in preference to libwine ones.

	* dlls/shell32/tests/shlfileop.c:
	shell32: Fix compilation of test on MSVC6.

2006-08-24  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Add an initial implementation of the PathEdit control.

2006-08-23  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c:
	opengl32: Fix ATI OpenGL bug.

2006-08-24  Roderick Colenbrander <thunderbird2k@gmx.net>

	* configure, configure.ac:
	configure: Extend the current OpenGL/Direct3D warning code.

2006-08-24  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

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

2006-08-23  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Updated conformance test return string for VT_RESERVED.

2006-08-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* tools/winedump/debug.c, tools/winedump/dump.c:
	winedump: Cast-qual warnings fix.

2006-08-23  James Liggett <jrliggett@cox.net>

	* dlls/winex11.drv/window.c:
	winex11.drv: Fix explorer regression caused by systray patch
	Move systray_dock_window call to X11DRV_CreateWindow so that it can
	safely call SetWindowPos without having _CheckNotSysLevel crash the
	explorer.

2006-08-22  Clinton Stimpson <cjstimpson@afinternet.net>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Add tests for EM_GETMODIFY.

2006-08-23  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/cstub.c, dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Tests for CStdStubBuffer_Disconnect and a tidy up of the implementation.

	* dlls/rpcrt4/cstub.c, dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Tests for CStdStubBuffer_Connect and fixes to make them pass.

	* dlls/rpcrt4/cstub.c, dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Add tests for CreateStub and fix up CStdStubBuffer_Construct to match.

	* dlls/rpcrt4/cstub.c, dlls/rpcrt4/ndr_midl.c, dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Add tests for NdrStubForwardingFunction and write a commented out
	implementation.
	This shows that the IRpcStubBuffer for a delegated stub's base
	interface is stored at (void**)This-1.

	* dlls/rpcrt4/tests/Makefile.in, dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Tests for NdrDllGetClassObject.
	These show that delegated stubs need different Connect, Disconnect and
	CountRefs methods than non-delegated stubs (ie they don't use all of
	the CStdStubBuffer_* functions).

2006-08-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/mlang/mlang.c:
	mlang: Added IMultiLanguage3 interface stub implementation.

	* include/mlang.idl:
	mlang.idl: Added IMultiLanguage3 declaration.

2006-08-22  Andrzej Popowski <popej@friko.onet.pl>

	* dlls/msvcrt/scanf.h, dlls/msvcrt/tests/scanf.c:
	msvcrt: Fix scanf format "%i" base detection.

2006-08-21  Stefan Huehner <stefan@huehner.org>

	* programs/winedbg/winedbg.man.in:
	winedbg: Fix typo in manpage.

2006-08-19  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c:
	wined3d: Make the destination surface glDirty in UpdateSurface.

2006-08-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: Write-strings warnings fix.

	* dlls/winspool.drv/info.c:
	winspool.drv: Write-strings warnings fix.

2006-08-18  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wineps.drv/ppd.c, dlls/wineps.drv/psdrv.h:
	wineps.drv: Write-strings warnings fix.

	* dlls/ddraw/main.c:
	ddraw: Write-strings warnings fix.

2006-08-23  Alexandre Julliard <julliard@winehq.org>

	* README, loader/wine.man.in:
	Documentation updates.

	* tools/.gitignore, tools/Makefile.in, tools/wineprefixcreate.man.in:
	tools: Added a man page for wineprefixcreate.

	* DEVELOPERS-HINTS:
	DEVELOPERS-HINTS: Moved to the Wiki by Tom Wickline.

2006-08-23  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shlwapi/resource.h, dlls/shlwapi/shlwapi_De.rc,
	  dlls/shlwapi/shlwapi_En.rc, dlls/shlwapi/shlwapi_Eo.rc,
	  dlls/shlwapi/shlwapi_Es.rc, dlls/shlwapi/shlwapi_Fi.rc,
	  dlls/shlwapi/shlwapi_Fr.rc, dlls/shlwapi/shlwapi_Hu.rc,
	  dlls/shlwapi/shlwapi_It.rc, dlls/shlwapi/shlwapi_Ja.rc,
	  dlls/shlwapi/shlwapi_Ko.rc, dlls/shlwapi/shlwapi_Nl.rc,
	  dlls/shlwapi/shlwapi_No.rc, dlls/shlwapi/shlwapi_Pl.rc,
	  dlls/shlwapi/shlwapi_Pt.rc, dlls/shlwapi/shlwapi_Tr.rc,
	  dlls/shlwapi/string.c:
	shlwapi: Move strings used by StrFromTimeInterval to resources.

	* programs/regedit/En.rc, programs/regedit/Pl.rc,
	  programs/regedit/about.c, programs/regedit/childwnd.c,
	  programs/regedit/framewnd.c, programs/regedit/listview.c,
	  programs/regedit/main.c, programs/regedit/main.h,
	  programs/regedit/resource.h:
	regedit: Put language-dependent strings in resources.

	* programs/regedit/framewnd.c:
	regedit: Remove custom filter from open/save dialogs.

2006-08-23  Paul Vriens <Paul.Vriens@xs4all.nl>

	* programs/winecfg/winecfg.c:
	winecfg: Make sure we can use a large text.

	* dlls/wintrust/wintrust_main.c:
	wintrust: Add some documentation.

2006-08-23  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Remove -O2 disable hack for MacOS now that gcc is fixed.

2006-08-21  Detlef Riekenberg <wine.dev@web.de>

	* configure, configure.ac:
	configure: Show messages about additional packages with --verbose.

2006-08-22  James Liggett <jrliggett@cox.net>

	* dlls/winex11.drv/window.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Add XEmbed system tray support.
	Portions of this patch based on the work of Mike Hearn and Rob
	Shearman.

2006-08-22  James Hawkins <truiken@gmail.com>

	* programs/msiexec/msiexec.c:
	msiexec: Add handling for msiexec's regserver option.

2006-08-23  Mike McCormack <mike@codeweavers.com>

	* server/thread.c:
	server: Use ntdll values where possible.

	* include/windef.h:
	windef.h: Add a definition for FILETIME.

	* dlls/ntdll/threadpool.c:
	ntdll: Use RTL_CRITICAL_SECTION not CRITICAL_SECTION.

2006-08-23  Paul Vriens <Paul.Vriens@xs4all.nl>

	* programs/winecfg/Nl.rc:
	winecfg: Update Dutch resource.

	* programs/winecfg/driveui.c:
	winecfg: Wrong text in messagebox.

2006-08-23  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/shlwapi/shlwapi_Ko.rc:
	shlwapi: Update Korean resource.

2006-08-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* libs/wine/loader.c:
	libwine: Cast-qual warning fix.

	* tools/winebuild/res16.c:
	winebuild: Cast-qual warnings fix.

2006-08-23  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/ntdll/tests/large_int.c, dlls/ntdll/tests/rtl.c,
	  dlls/ntdll/tests/rtlbitmap.c, dlls/ntdll/tests/string.c:
	ntdll/tests: Print 64bit integers as two 32 bit integers.

2006-08-23  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fix opengl pixel format bug.

2006-08-22  Fatih Aşıcı <fatih.asici@gmail.com>

	* dlls/mshtml/Tr.rc:
	mshtml: Update Turkish resources.

2006-08-22  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/main.c:
	crypt32: Add CryptFormatObject stub.

2006-08-22  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shell32_Pl.rc:
	shell32: Pl.rc: Fix a backslash.

	* dlls/shlwapi/string.c:
	shlwapi: Make StrFormatByteSize format numbers using locale settings.

2006-08-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/conpoint.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/olecmd.c, dlls/mshtml/persist.c,
	  dlls/mshtml/tests/htmldoc.c:
	mshtml: Use IPropertyNotifySink connection point.

2006-08-22  Robert Reif <reif@earthlink.net>

	* dlls/dsound/propset.c:
	dsound: Remove unused parameter from propset functions.

2006-08-21  Gerald Pfeifer <gerald@pfeifer.com>

	* configure, configure.ac:
	configure: Try to #include <pthread.h> before checking for pthread_np.h.

2006-08-21  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h:
	wined3d: Correctly draw transformed and untransformed vertices in the same scene.

2006-08-21  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/main.c:
	crypt32: Print parameters and add some documentation.

2006-08-21  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/package.c:
	msi: Add tests for the AppSearch action.

	* dlls/msi/cond.y, dlls/msi/tests/package.c:
	msi: Add handling for MsiEvaluateCondition's substring operators.

	* dlls/msi/tests/package.c:
	msi: Add tests for MsiEvaluateCondition's substring operators.

2006-08-22  Mike McCormack <mike@codeweavers.com>

	* dlls/itss/itss.c:
	itss: Simplify the class factory.

2006-08-22  Kai Blin <kai.blin@gmail.com>

	* dlls/kernel/sync.c:
	kernel: Set last error in CreateIoCompletionPort.

2006-08-21  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shlwapi/string.c:
	shlwapi: Format the kilobyte file size number using locale settings.
	The code is quite complex but I haven't found any easier way to do it
	(passing NULL as NUMBERFMT results in two decimal places being appended).

	* dlls/shell32/pidl.c, dlls/shell32/recyclebin.c:
	shell32: Show file size in the details view in kilobytes.

2006-08-22  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shlfileop.c:
	shell32: Don't add the directory name twice when recursing into subdirectories.

2006-08-21  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Add support for handling TKIND_COCLASS in userdefined_to_variantvt.

2006-08-21  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/oid.c:
	crypt32: Fix a misplaced parenthesis.

2006-08-21  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/oleaut32/variant.c:
	oleaut32: Print 64bit integers with wine_dbgstr_longlong.

2006-08-21  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Update Norwegian Bokmål resources.

2006-08-21  Fatih Aşıcı <fatih.asici@gmail.com>

	* programs/winecfg/Tr.rc:
	winecfg: Update Turkish resources.

2006-08-21  Matthew Finnicum <MattFinn@gmail.com>

	* dlls/riched20/editor.c:
	riched20: Make EM_EXLINEFROMCHAR handle special case of lParam == -1.

2006-08-21  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/main.h, programs/oleview/typelib.c:
	oleview: Added dispinterface handling to idl viewer.

	* programs/oleview/typelib.c:
	oleview: Added typedef handling to idl viewer.

2006-08-21  Huw Davies <huw@codeweavers.com>

	* dlls/winex11.drv/xrender.c:
	winex11.drv: Fix rendering of fonts that don't support anti-aliasing.

2006-08-19  Frank Richter <frank.richter@gmail.com>

	* programs/winecfg/Bg.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Hu.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Tr.rc,
	  programs/winecfg/audio.c, programs/winecfg/properties.h,
	  programs/winecfg/resource.h:
	winecfg: audio: Use strings from resources.

2006-08-18  Frank Richter <frank.richter@gmail.com>

	* programs/winecfg/Bg.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Hu.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Tr.rc,
	  programs/winecfg/driveui.c, programs/winecfg/resource.h:
	winecfg: driveui: Load UI strings from resources.

2006-08-19  David Adam <David.Adam@math.cnrs.fr>

	* programs/winecfg/Fr.rc:
	winecfg: Update French translation.

2006-08-20  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Don't pass bad values to glAlphaFunc and glDepthFunc.

	* dlls/wined3d/device.c:
	wined3d: Print real unhandled D3DCMPFUNC value.

2006-08-20  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/typelib.c:
	oleview: Added idl save to file functionality.

	* programs/oleview/main.h, programs/oleview/typelib.c:
	oleview: Added idl displaying.
	- Added idl displaying.
	- Fixed AddToTLDataStrWithTabsW function.

	* programs/oleview/typelib.c:
	oleview: Added idl formatting.

	* programs/oleview/typelib.c:
	oleview: Added functions description to idl generation.

2006-08-21  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/advpack/tests/install.c:
	advpack/tests: Make RunSetupCommand not popup dialogs.

2006-08-21  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/actctx.c:
	kernel32: Print parameters, call SetLastError() when failing.

2006-08-19  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_gl.h:
	wined3d: Better GPU detection.

2006-08-19  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/device.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Improve float constant loading a bit.
	- Use a list to keep track of what constants are set.
	- Move TRACEs and checkGLcall calls out of the main constant loading loop.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Lookup GLSL float uniform locations only once per program.

	* dlls/wined3d/stateblock.c:
	wined3d: Free the float constant map arrays for all stateblocks.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Fix indices for the float constant map.
	Indices for the float constant map should be multiplied by 4 because
	we're loading 4 component float vectors, not because the size of a
	float is 4.

2006-08-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsiface.idl, dlls/mshtml/olecmd.c:
	mshtml: Added IDM_BOLD implementation.

2006-08-20  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/wintrust.spec, dlls/wintrust/wintrust_main.c,
	  include/mscat.h:
	wintrust: Added stubbed CryptCATAdminEnumCatalogFromHash.

2006-08-19  Dan Kegel <dank@kegel.com>

	* dlls/mpr/wnet.c:
	mpr: Fix bug in ProviderOrder comma processing in wnetInit().

2006-08-19  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c:
	riched20: Swap two lines that were in wrong order / caused notification not
	to be sent.

2006-08-19  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/ntlm.c:
	secur32: Initial working implementation of EncryptMessage and DecryptMessage.

2006-08-19  Robert Reif <reif@earthlink.net>

	* dlls/kernel/environ.c, dlls/kernel/tests/environ.c:
	kernel32: Fix ExpandEnvironmentStrings to not overflow UNICODE_STRING buffer
	size (with test).

	* dlls/advapi32/tests/security.c:
	advapi32: LookupAccountSid buffer size query tests.

	* dlls/advapi32/security.c:
	advapi32: LookupAccountSid buffer size query fixes.

2006-08-18  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/qcap/capturegraph.c:
	qcap: Print 64bit integers with wine_dbgstr_longlong.

2006-08-18  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Update Norwegian Bokmål resources.

	* dlls/shlwapi/shlwapi_No.rc:
	shlwapi: Update Norwegian Bokmål resources.

2006-08-18  Stefan Huehner <stefan@huehner.org>

	* dlls/advpack/tests/advpack.c, dlls/advpack/tests/files.c,
	  dlls/comctl32/tests/header.c, dlls/ddraw/tests/d3d.c,
	  dlls/gphoto2.ds/gphoto2_i.h, dlls/gphoto2.ds/ui.c,
	  dlls/riched20/tests/editor.c, dlls/rpcrt4/tests/ndr_marshall.c,
	  dlls/sane.ds/sane_main.c, dlls/shell32/shellpath.c,
	  dlls/twain_32/dsm_ctrl.c:
	Fix some -Wstrict-prototype warnings () -> (void).

2006-08-18  Oleg Krylov <oleg.krylov@gmail.com>

	* dlls/comctl32/toolbar.c:
	comctl32: Correctly map toolbar bitmap mask color in case of non-default
	color scheme.

2006-08-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/except.c:
	msvcrt: Fixed access to the extra arguments of setjmp3.

	* dlls/user/user_main.c:
	user: Add .exe extension to wineboot just in case.

	* programs/explorer/explorer.c:
	explorer: Specify an explicit path when launching winefile.

2006-08-18  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/quartz/filtergraph.c, dlls/quartz/systemclock.c:
	quartz: Print 64bit integers with wine_dbgstr_longlong.

2006-08-18  Sagar Mittal <sagar.mittal@gmail.com>

	* dlls/quartz/dsoundrender.c:
	quartz: DSoundRender: Do not overwrite a full buffer.

2006-08-18  Frank Richter <frank.richter@gmail.com>

	* dlls/shlwapi/shlwapi_De.rc:
	shlwapi: Update German resources.

	* programs/winecfg/Bg.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Hu.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Tr.rc,
	  programs/winecfg/resource.h, programs/winecfg/x11drvdlg.c:
	winecfg: x11drv: Load vertex shader mode strings from resources.

2006-08-18  Tom Wickline <twickline@gmail.com>

	* DEVELOPERS-HINTS:
	DEVELOPERS-HINTS: Fix reference in implementing new API calls.

2006-08-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/oleobj.c, dlls/mshtml/tests/htmldoc.c, dlls/mshtml/view.c:
	mshtml: Added more Exec tests and fixes.

2006-08-18  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/ntdll/path.c, dlls/ntdll/tests/path.c:
	ntdll: Fix failing test on windows.

2006-08-17  Detlef Riekenberg <wine.dev@web.de>

	* dlls/sfc/sfc_main.c:
	sfc: Print a FIXME only once.

2006-08-18  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/capture.c, dlls/dsound/tests/dsound.c,
	  dlls/dsound/tests/dsound8.c, dlls/dsound/tests/duplex.c,
	  dlls/dsound/tests/propset.c:
	dsound: Add class factory tests.

	* dlls/dsound/capture.c, dlls/dsound/dsound.c, dlls/dsound/dsound_main.c,
	  dlls/dsound/dsound_private.h, dlls/dsound/duplex.c,
	  dlls/dsound/propset.c:
	dsound: Class factory cleanup.
	Consolidate all class factories into a single implementation.
	Fixes a problem discovered by oleview.

2006-08-17  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/dispatcher.c, dlls/secur32/ntlm.c:
	secur32: Gracefully handle ntlm_auth versions that don't support the new
	commands.

2006-08-17  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shlwapi/shlwapi.rc, dlls/shlwapi/shlwapi_Pl.rc:
	shlwapi: Add the Polish translation.

	* dlls/shlwapi/resource.h, dlls/shlwapi/shlwapi_De.rc,
	  dlls/shlwapi/shlwapi_En.rc, dlls/shlwapi/shlwapi_Eo.rc,
	  dlls/shlwapi/shlwapi_Es.rc, dlls/shlwapi/shlwapi_Fi.rc,
	  dlls/shlwapi/shlwapi_Fr.rc, dlls/shlwapi/shlwapi_Hu.rc,
	  dlls/shlwapi/shlwapi_It.rc, dlls/shlwapi/shlwapi_Ja.rc,
	  dlls/shlwapi/shlwapi_Ko.rc, dlls/shlwapi/shlwapi_Nl.rc,
	  dlls/shlwapi/shlwapi_No.rc, dlls/shlwapi/shlwapi_Pt.rc,
	  dlls/shlwapi/shlwapi_Tr.rc, dlls/shlwapi/string.c:
	shlwapi: Store the "%ld bytes" string as a resource.

	* dlls/shell32/trash.c:
	shell32: Show the original file name and deletion date in the Trash folder.

	* dlls/shell32/xdg.c, dlls/shell32/xdg.h:
	shell32: Add desktop entries parsing code.

	* dlls/shell32/shlfileop.c:
	shell32: Use Yes/No instead of OK/Cancel in confirm dialogs.

2006-08-18  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/locale.c:
	kernel32: Change a FIXME to a WARN.

	* dlls/msi/Makefile.in, dlls/msi/alter.c, dlls/msi/query.h,
	  dlls/msi/sql.y, dlls/msi/tokenize.c:
	msi: Add a stub ALTER query.

2006-08-17  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/typegen.c:
	widl: Output format-strings for interface pointers.

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Allow format-string functions to work with objects.

2006-08-17  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/security.c:
	advapi32: Fix test_LookupAccountSid to work on win9x.

2006-08-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/conpoint.c:
	mshtml: Fix Advise implementation for IPropertyNotifySink.

	* dlls/mshtml/nsiface.idl, dlls/mshtml/olecmd.c:
	mshtml: Switch nsWebBrowset to editing mode in exec_editmod.

2006-08-17  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/shlwapi/string.c:
	shlwapi: Print 64bit integers with wine_dbgstr_longlong.

2006-08-17  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Remember to skip over the conformance description.

2006-08-17  Oleg Krylov <oleg.krylov@gmail.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Fix ImageList_Replace function to correctly apply image mask.

2006-08-18  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/wintrust.h:
	wintrust.h: Added some defines.

2006-08-17  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/secur32/tests/Makefile.in, dlls/secur32/tests/schannel.c:
	secur32: Make tests loadable on NT4.

2006-08-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/user_main.c, programs/explorer/desktop.c:
	user: Defer all ExitWindowsEx processing to wineboot.

	* programs/wineboot/Makefile.in, programs/wineboot/shutdown.c,
	  programs/wineboot/wineboot.c:
	wineboot: Added support for doing a proper shutdown before rebooting.
	Send WM_QUERYENDSESSION messages to all windows of a given process
	before moving on to the next.
	Switch option parsing to getopt.
	Added a bunch of options to control shutdown behavior.

2006-08-16  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c, dlls/opengl32/wgl_ext.c, dlls/opengl32/wgl_ext.h,
	  dlls/winex11.drv/opengl.c:
	x11drv/opengl: Pixel format rewrite.

2006-08-16  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c, dlls/riched20/editor.h, dlls/riched20/paint.c,
	  dlls/riched20/style.c:
	riched20: Send EN_LINK notifications. Properly underline / color links.

2006-08-17  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/Makefile.in, dlls/secur32/ntlm.c,
	  dlls/secur32/secur32_priv.h, dlls/secur32/util.c:
	secur32: Add real signing / verifying to NTLM provider.

	* dlls/secur32/ntlm.c:
	secur32: Mask away NTLMv2 and key exchange flags so we never negotiate it
	for now.

2006-08-16  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/regedit/childwnd.c:
	regedit: Write-strings warnings fix.

	* dlls/ddraw/direct3d.c:
	ddraw: Write-strings warnings fix.

	* dlls/winspool.drv/info.c:
	winspool.drv: Write-strings warning fix.

2006-08-16  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/proxy.c:
	widl: Use typegen.c format-string functions in proxy.c.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Move format-string declaration output to typegen.c.

2006-08-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added test of edit mode.

	* dlls/mshtml/olecmd.c:
	mshtml: Added beginning implementation of IDM_EDITMODE.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/oleobj.c:
	mshtml: Rename get_property to get_client_disp_property and make it available
	for other files.

	* include/mshtmhst.idl:
	mshtmhst.idl: Added DOCHOSTUITYPE declaration.

2006-08-16  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/wined3d/surface.c:
	wined3d: Make sure b_info structure is properly allocated and released.

2006-08-16  Stefan Leichter <Stefan.Leichter@camline.com>

	* tools/winedump/minidump.c:
	winedump: Print each 64bit integers as two 32 bit integers.

2006-08-17  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

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

2006-08-17  Fatih Aşıcı <fatih.asici@gmail.com>

	* programs/winecfg/Tr.rc:
	winecfg: Update Turkish resource file.

2006-08-16  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Updated Norwegian Bokmål resources.

2006-08-16  Oleg Krylov <oleg.krylov@gmail.com>

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Use HOT imagelist for buttons in CHECKED state.

2006-08-16  Frank Richter <frank.richter@gmail.com>

	* programs/winecfg/appdefaults.c:
	winecfg: Fix issues with LVM_GETITEMW by removing superfluous flag.

	* programs/winecfg/appdefaults.c, programs/winecfg/winecfg.c,
	  programs/winecfg/winecfg.h:
	winecfg: Use WCHARs for window title, current app.

2006-08-16  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Add tests for NdrAllocate.

2006-08-16  Frank Richter <frank.richter@gmail.com>

	* programs/winecfg/Bg.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Hu.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Tr.rc:
	winecfg: New resource strings for appdefaults.

2006-08-16  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c:
	mshtml: Added [Get|Set]ParentContentListener implementation.

2006-08-16  Robert Shearman <rob@codeweavers.com>

	* dlls/advapi32/registry.c, dlls/advapi32/tests/registry.c:
	advapi32: Add tests for RegQueryValueEx to show that it sets the data
	size to 0 when a buffer isn't present and that it sets the type to
	REG_NONE on Win9x.

2006-08-16  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c:
	wined3d: Silence WINED3DRS_DEBUGMONITORTOKEN.

2006-08-16  Robert Reif <reif@earthlink.net>

	* dlls/secur32/tests/secur32.c:
	secur32: Fix GetComputerObjectName tests based on feedback from Paul Vriens.

2006-08-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/win.c:
	user: Explicitly load explorer.exe from the system directory.

	* tools/wine.inf:
	wine.inf: Create a fake exe for explorer.exe.

2006-08-16  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/ole2.c, dlls/ole32/storage32.c:
	ole32: Move some functions out of compobj.c that don't belong there and update
	the copyright statement.

	* dlls/ole32/compobj.c, dlls/ole32/tests/compobj.c,
	  dlls/ole32/tests/marshal.c:
	ole32: Add some more tests for failure cases of Co* functions and make builtin
	ole32 pass them.

	* dlls/ole32/compobj.c, dlls/ole32/tests/compobj.c:
	ole32: Add tests for the failure cases of CLSIDFromProgID and fix the function
	to conform to these.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Move processing of the arguments from NdrClientCall2 to two new
	functions.

2006-08-16  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/option.c:
	wldap32: Support setting server controls.

	* dlls/wldap32/option.c, dlls/wldap32/parse.c:
	wldap32: Document ldap_{get,set}_option and the parsing functions.

2006-08-16  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/Makedll.rules.in,
	  programs/Makeprog.rules.in:
	configure: Setting rpath should no longer be needed for dlls.

2006-08-16  Mike McCormack <mike@codeweavers.com>

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Ordinal 394 should load and call shell32.SHNotifyChange.
	Makes builtin shlwapi behave better during reboot after IE6 install.

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Add a stub implementation for ZoneComputePaneSize.
	Allows IE6 to show its main window with builtin shlwapi.

	* dlls/msi/tests/db.c:
	msi: Fix a couple of memory leaks in the test code.

2006-08-16  Frank Richter <frank.richter@gmail.com>

	* programs/winecfg/appdefaults.c, programs/winecfg/resource.h,
	  programs/winecfg/winecfg.h:
	winecfg: appdefaults: Use more strings from resources, unicode.

	* programs/winecfg/main.c, programs/winecfg/winecfg.c,
	  programs/winecfg/winecfg.h:
	winecfg: Make load_string public.

	* programs/winecfg/De.rc:
	winecfg: Tweak and update German resources.

2006-08-15  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/proxy.c:
	widl: Generate proxy code for user marshalled types.

	* tools/widl/proxy.c:
	widl: Fix out-only temporary variable generation.

	* tools/widl/proxy.c:
	widl: Fix NdrComplexStructUnmarshall calls in generated code.

	* tools/widl/proxy.c:
	widl: Fix NdrConformantArrayUnmarshall calls in generated code.

	* tools/widl/header.c, tools/widl/parser.y:
	widl: Calculate method indices in parser instead of during header generation.

2006-08-15  Robert Reif <reif@earthlink.net>

	* dlls/secur32/tests/Makefile.in, dlls/secur32/tests/secur32.c:
	secur32: Add GetComputerObjectName tests.

	* dlls/secur32/secur32.c:
	secur32: Partial GetComputerObjectName implementation.

	* dlls/advapi32/tests/lsa.c:
	advapi32: Fix LsaQueryInformationPolicy test to pass on NT4.

	* dlls/kernel/cpu.c, dlls/kernel/kernel32.spec, include/winbase.h:
	kernel32: Add GetNativeSystemInfo.

2006-08-15  James Hawkins <truiken@gmail.com>

	* dlls/msi/install.c, dlls/msi/msi.spec, include/msiquery.h:
	msi: Add a stub for MsiGetFeatureCost.

	* dlls/msi/source.c:
	msi: Use the bare minimum number of parameters for LookupAccountName.

2006-08-15  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wineps.drv/ps.c:
	wineps.drv: Write-strings warnings fix and declare function static.

	* dlls/crypt32/tests/oid.c:
	crypt32/tests: Write-strings warning fix.

2006-08-15  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/navigate.c, dlls/mshtml/nsio.c:
	mshtml: Correctly handle nsILoadGroup.

2006-08-15  Alexandre Julliard <julliard@winehq.org>

	* server/process.c:
	server: Store the actual process count in snapshots.
	We can't rely on running_processes for that, since it now also counts
	processes waiting for SIGKILL and those aren't included in snapshots.

	* dlls/user/tests/cursoricon.c:
	user/tests: Fix a compiler warning, and remove some useless casts.

	* dlls/ntdll/loadorder.c:
	ntdll: Default to native loadorder for the main exe if not in system directory.
	Unlike dlls, executables can have the same name without necessarily
	being the same application, so defaulting to native is more likely to
	do the right thing.

2006-08-15  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/kernel/tests/file.c:
	kernel/tests: Wrong error code checked.

	* dlls/setupapi/tests/devinst.c:
	setupapi: Make tests loadable again on NT4.

	* include/winerror.h:
	winerror.h: Added an error code.

	* dlls/wintrust/wintrust.spec, dlls/wintrust/wintrust_main.c,
	  include/wintrust.h:
	wintrust: Added stubbed WintrustLoadFunctionPointers.

2006-08-15  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, dlls/infosoft/Makefile.in,
	  dlls/infosoft/tests/Makefile.in, dlls/infosoft/tests/infosoft.c,
	  programs/winetest/Makefile.in:
	infosoft: Add a test for the language neutral word breaker.

2006-08-15  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/winecfg/En.rc:
	winecfg: Improve wording of virtual desktop explanation.

2006-08-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ddraw/main.c:
	ddraw: Do not report DDCAPS_OVERLAY and friends since overlays are not supported.

2006-08-15  Alexandre Julliard <julliard@winehq.org>

	* tools/relpath.c:
	relpath: Properly handle a "." directory name.

2006-08-15  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c:
	usp10: Remove unnecessary casts in test suite.

2006-08-14  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/chain.c,
	  dlls/crypt32/crypt32.spec, dlls/crypt32/tests/Makefile.in,
	  dlls/crypt32/tests/chain.c:
	crypt32: Implement CertCreateCertificateChainEngine and
	CertFreeCertificateChainEngine.

	* include/wincrypt.h:
	crypt32: Implement CertCreateCertificateChainEngine and
	CertFreeCertificateChainEngine.

2006-08-15  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, include/config.h.in, loader/kthread.c:
	loader/kthread: Remove some unneeded #ifdefs, other platforms use pthread now.

	* configure, configure.ac:
	configure: Disable optimization on MacOS because of gcc bug.

	* configure, configure.ac:
	configure: Use a platform name check for MacOS shared library support,
	it's completely different from the others anyway.

	* configure, configure.ac, include/config.h.in, libs/wine/Makefile.in:
	configure: Moved the library checks after the function checks to avoid code
	duplication.

2006-08-15  Kai Blin <kai.blin@gmail.com>

	* include/sspi.h:
	secur32: Fix typo in ISC flags.

	* dlls/secur32/ntlm.c:
	secur32: Add handling of feature flags and session key to AcceptSecurityContext.

2006-08-14  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Copy helper buffer to output buffer before reusing helper buffer.

2006-08-14  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/proxy.c:
	widl: Pass the right size to MIDL_memset in generated proxy code.

2006-08-14  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Non-compressed files may come before the list of compressed files in the
	file sequence.

2006-08-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/cabinet/tests/extract.c:
	cabinet/tests: Write-strings warnings fix.

	* dlls/dnsapi/tests/name.c:
	dnsapi/tests: Write-strings warnings fix.

2006-08-13  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/gdbproxy.c:
	winedbg: Correctly protect system inclusion (needed for Mingw compilation).

2006-08-15  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/kernel/Makefile.in,
	  dlls/ws2_32/Makefile.in, include/config.h.in,
	  programs/winedbg/Makefile.in, server/Makefile.in:
	configure: Only link against libpoll where really necessary.

2006-08-14  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/wintrust.spec, dlls/wintrust/wintrust_main.c,
	  include/wintrust.h:
	wintrust: Added stubbed WintrustRemoveActionID.

2006-08-14  Frank Richter <frank.richter@gmail.com>

	* dlls/user/sysparams.c:
	user: Fix SPI_SETICONTITLELOGFONT to check for LOGFONTW size.

	* dlls/user/sysparams.c:
	user: Initialize size of nonclients struct in load_nonclient_metrics.

2006-08-14  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, libs/wine/Makefile.in:
	libwine: Also set the current library version for MacOS.

	* configure, configure.ac:
	configure: Suppress multiple definitions warnings from the MacOS linker.

	* server/request.c, server/request.h, server/signal.c:
	server: Make sure to completely kill processes before returning from a
	wineserver -k.

	* server/process.c, server/process.h, server/thread.c:
	server: Send a SIGKILL to processes that don't terminate properly.

2006-08-14  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/ole2.c:
	ole32: Avoid a warning for VT_FILETIME in PropVariantCopy.

2006-08-13  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/symbol.c:
	winedbg: Fixed the symbol lookup so that it can really find _foo when looking
	for foo.

	* programs/winedbg/stack.c:
	winedbg: Native dbghelp can modify the passed debug context in StackWalk,
	so guard against it.

	* programs/winedbg/Makefile.in, programs/winedbg/tgt_active.c:
	winedbg: Don't ask for module inspection when calling SymInitialize.

2006-08-14  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Clean up AcceptSecurityContext (reduce indent and duplication).

2006-08-14  Frank Richter <frank.richter@gmail.com>

	* dlls/uxtheme/msstyles.c, dlls/uxtheme/system.c:
	uxtheme: Set non-client metrics from theme.

	* dlls/uxtheme/msstyles.c:
	uxtheme: Split color handling out of MSSTYLES_ParseThemeIni into smaller
	helper functions.

	* dlls/uxtheme/msstyles.c, dlls/uxtheme/system.c:
	uxtheme: Enable gradient captions if a theme provides colors for them.

2006-08-14  Shachar Shemesh <wine@shemesh.biz>

	* fonts/system.sfd:
	fonts: Add Hebrew to the system font.

2006-08-14  Mike McCormack <mike@codeweavers.com>

	* dlls/oleaut32/olepicture.c:
	oleaut32: Put the HeapFree back in the right place.

	* dlls/ole32/stg_prop.c:
	ole32: Use PropVariantInit instead of memset.

2006-08-14  Robert Reif <reif@earthlink.net>

	* include/Makefile.in, include/dsgetdc.h:
	include: Add dsgetdc.h.

	* dlls/advapi32/lsa.c:
	advapi32: Move duplicated code into function.

	* dlls/advapi32/tests/lsa.c, dlls/advapi32/tests/security.c:
	advapi32: Try again with different access mask if LsaOpenPolicy fails with
	STATUS_ACCESS_DENIED.

2006-08-14  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/dispatcher.c, dlls/secur32/ntlm.c:
	secur32: Fix heap error.

2006-08-13  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Add handling for SECPKG_CONTEXT_FLAGS to QueryContextAttributes,
	unify indentation.

2006-08-14  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Cast helper to ULONG_PTR instead of DWORD.

2006-08-13  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/ntlm.c:
	secur32: Implement simple VerifySignature.

2006-08-12  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/dispatcher.c, dlls/secur32/ntlm.c,
	  dlls/secur32/secur32_priv.h, dlls/secur32/tests/ntlm.c:
	secur32: Implement simple MakeSignature.

2006-08-14  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Make AcceptSecurityContext behaviour consistent with Windows.

2006-08-13  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/olefont.c:
	oleaut32: Conformance test for olefont:AddRefHfont.

	* dlls/oleaut32/tests/olefont.c:
	oleaut32: Conformance test for olefont:ReleaseHfont.

2006-08-14  Mike McCormack <mike@codeweavers.com>

	* dlls/oleaut32/olepicture.c:
	oleaut32: Calculate icon data if the picture is dirty, or there's no icon data.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Print an IID in the trace, not just a pointer to it.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Don't complain when PICTDESC->cbSizeofstruct is 0.

	* dlls/ole32/hglobalstream.c:
	ole32: Always set pcbWritten when writing a stream.

	* dlls/ole32/ole2.c:
	ole32: FreePropVariantArray should return an error if rgvars is null.
	As suggested by Rob Shearman.

2006-08-14  Frank Richter <frank.richter@gmail.com>

	* dlls/uxtheme/system.c:
	uxtheme: Don't back up colors etc. when a theme is already active.

2006-08-14  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

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

2006-08-12  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/security.c:
	advapi32: Add more LookupAccountSid tests.

	* dlls/advapi32/security.c:
	advapi32: Add more SIDs to AccountLookupSid.

	* dlls/netapi32/access.c:
	netapi32: NetUserModalsGet bug fixes and cleanup.

2006-08-13  Phil Costin <philcostin@hotmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix vertex shader corruption issue.

2006-08-13  Stefan Leichter <Stefan.Leichter@camline.com>

	* programs/winedbg/memory.c:
	winedbg: Print 64bit integers with wine_dbgstr_longlong.

2006-08-13  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advpack/tests/files.c:
	advpack/tests: Write-strings warnings fix.

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Write-strings warnings fix.

2006-08-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/winetest/main.c:
	winetest: Write-strings warnings fix.

	* programs/taskmgr/dbgchnl.c:
	taskmgr: Write-strings warnings fix.

	* dlls/crypt32/tests/encode.c:
	crypt32/tests: Write-strings warnings fix.

2006-08-12  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/typelib.c:
	oleview: Improved interface handling in idl viewer.

2006-08-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsio.c:
	mshtml: Remove no longer used get_nsIURI.

	* dlls/mshtml/protocol.c, dlls/mshtml/tests/protocol.c:
	mshtml: Return INET_E_USE_DEFAULT_PROTOCOLHANDLER in about protocol handler's
	CombineUrl.

2006-08-11  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/widltypes.h:
	widl: Improve pointer null checking logic.

	* tools/widl/parser.y, tools/widl/typegen.c, tools/widl/widltypes.h:
	widl: Use ref_type to simplify some code.

2006-08-11  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/security.c:
	advapi32: Add some more well known SIDs.

2006-08-11  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/olefont.c:
	oleaut32: Added test to check if olefont:IFont_QueryInterface increments
	ref counter.

2006-08-11  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: If a component's state is not local, source, or default, default to the
	local state.

2006-08-11  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/main.c,
	  dlls/crypt32/tests/main.c:
	crypt32: Improve undocumented functions.
	- Test and implement I_CryptGetDefaultCryptProv (and correct its
	parameter list)
	- I_CryptReadTrustedPublisherDWORDValueFromRegistry always initializes
	its out parameter, correct and show with a test.

	* dlls/msi/tokenize.c:
	msi: Use wide char strings for token values to avoid an unnecessary
	WideCharToMultiByte.

2006-08-11  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/build.h, tools/winebuild/import.c,
	  tools/winebuild/main.c, tools/winebuild/relay.c,
	  tools/winebuild/res16.c, tools/winebuild/res32.c,
	  tools/winebuild/spec16.c, tools/winebuild/spec32.c,
	  tools/winebuild/utils.c:
	winebuild: Added output() function to properly deal with write errors.

2006-08-11  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c:
	widl: Don't generate indentation spaces on empty lines.

2006-08-11  Alexandre Julliard <julliard@winehq.org>

	* loader/pthread.c:
	loader: Exit the whole process when killing the last thread.

2006-08-11  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/hlpfile.c:
	winhelp: Fix LZ77 decompressor.

2006-08-11  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/tests/install.c, dlls/msi/tests/package.c:
	msi/tests: Write-strings warnings fix.

	* dlls/msi/files.c:
	msi: Write-strings warning fix.

	* dlls/version/install.c:
	version: Write-strings warnings fix.

2006-08-11  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/main.c:
	crypt32/tests: Only load crypt32 once.

2006-08-11  Robert Reif <reif@earthlink.net>

	* include/lmaccess.h:
	lmaccess.h: Add some LOCALGROUP defines.

	* dlls/kernel/kernel32.spec, dlls/kernel/process.c, include/winbase.h:
	kernel32: Add IsWow64Process.

2006-08-11  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wldap32/ber.c, dlls/wldap32/init.c:
	wldap32: Write-strings warnings fix.

2006-08-11  Francois Gouget <fgouget@codeweavers.com>

	* dlls/shdocvw/regsvr.c:
	shdocvw: Set the CLSID_Internet shell folder's attributes.

2006-08-11  Mike McCormack <mike@codeweavers.com>

	* dlls/infosoft/infosoft_main.c, dlls/infosoft/wordbreaker.c,
	  dlls/uuid/uuid.c, include/.gitignore, include/Makefile.in,
	  include/indexsrv.idl, include/indexsvr.idl:
	include: Rename indexsvr.idl to indexsrv.idl.

	* dlls/infosoft/wordbreaker.c:
	infosoft: Use the pfnFillTextBuffer function to refresh the buffer.

2006-08-10  Mike McCormack <mike@codeweavers.com>

	* dlls/infosoft/infosoft_main.c, dlls/infosoft/wordbreaker.c,
	  tools/wine.inf:
	infosoft: Implement and register the language neutral wordbreaker, not the
	English_US one.

2006-08-10  Aric Stewart <aric@codeweavers.com>

	* dlls/user/menu.c:
	user: Implement MNS_NOTIFYBYPOS.

2006-08-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/signal_i386.c:
	ntdll: Remove some macros and clean up the code now that all platforms use
	siginfo.

	* dlls/ntdll/signal_i386.c:
	ntdll: Switch linux to siginfo-style signal handling.

2006-08-11  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, dlls/Makefile.in, dlls/pstorec/Makefile.in,
	  dlls/pstorec/pstorec.c, dlls/pstorec/pstorec.spec:
	pstorec: Add a stub implementation.

2006-08-10  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/olefont.c:
	oleaut32: Removes stub message from olefont:OLEFontImpl_FindConnectionPoint.

2006-08-10  Molle Bestefich <molle.bestefich@gmail.com>

	* tools/bug_report.pl:
	bug_report.pl: Use correct 'wine --version' syntax.

2006-08-10  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/widl.h:
	widl: Fix incorrect version number in generated code.

2006-08-11  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/shell32/shell32_Ko.rc:
	shell32: Updated Korean resource.

2006-08-11  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/drawprim.c:
	wined3d: Fix opengl extension call.

2006-08-10  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c, dlls/msi/tests/package.c:
	msi: Only remove a file if the version to be installed is strictly newer than
	the old file.

2006-08-10  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/regedit/treeview.c:
	regedit: Write-strings warnings fix.

	* dlls/wininet/tests/http.c:
	wininet/tests: Write-strings warnings fix.

2006-08-10  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/editor.c:
	riched20: Accept RTF header without a version number.

	* dlls/riched20/reader.c:
	riched20: Accept RTF group tokens inside colortbl destination.

2006-08-10  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/directx.c:
	wined3d: Fix spelling in a comment.

2006-08-10  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Implement CompleteAuthToken for NTLM.

2006-08-10  Alexandre Julliard <julliard@winehq.org>

	* server/fd.c, server/file.h, server/mailslot.c, server/named_pipe.c,
	  server/process.c, server/queue.c, server/registry.c,
	  server/request.c, server/serial.c, server/thread.c, server/timer.c,
	  server/trace.c, server/winstation.c:
	server: Only call gettimeofday once per poll loop.

2006-08-04  Tijl Coosemans <tijl@ulyssis.org>

	* dlls/kernel/tests/file.c:
	kernel/tests: Increase requested file size in two tests to hit FreeBSD file
	size limit.

2006-08-10  Alexandre Julliard <julliard@winehq.org>

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

----------------------------------------------------------------
2006-08-08  Colin Pitrat <colin.pitrat@bull.net>

	* tools/bug_report.pl, tools/make_authors, tools/winapi/config.pm,
	  tools/winapi/make_filter, tools/winapi/msvcmaker,
	  tools/winapi/nativeapi.pm, tools/winapi/winapi_check,
	  tools/winapi/winapi_extract, tools/winapi/winapi_fixup,
	  tools/winapi/winapi_module_user.pm, tools/winapi/winapi_test,
	  tools/winedump/function_grep.pl:
	tools: Check for open return code in Perl scripts.

2006-08-09  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Add conformance tests for WM_SETFONT.

2006-08-09  Ken Myers <kmyers@ucla.edu>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editstr.h,
	  dlls/riched20/tests/editor.c:
	riched20: Implement EM_EXLIMITTEXT, EM_GETLIMITTEXT and tests.

2006-08-09  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/oid.c, dlls/crypt32/tests/oid.c:
	crypt32: Implement CryptRegisterDefaultOIDFunction and
	CryptUnregisterDefaultOIDFunction.

2006-08-09  Francois Gouget <fgouget@codeweavers.com>

	* dlls/setupapi/install.c:
	setupapi: Fix handling of inf paths that are quoted (due to spaces, typically).

2006-08-09  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/typegen.c:
	widl: Add ref_type (dereference typedefs) and use it.

2006-08-09  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/ddraw/main.c, dlls/gdi/font.c, dlls/setupapi/misc.c,
	  dlls/setupapi/stringtable.c:
	janitorial: Removed the rest of the redundant NULL checks before HeapFree.

2006-08-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/version/tests/info.c, dlls/version/tests/install.c:
	version/tests: Write-strings warnings fix.

	* dlls/wineps.drv/init.c:
	wineps.drv: Write-strings warnings fix.

2006-08-10  Mike McCormack <mike@codeweavers.com>

	* dlls/user/static.c:
	user32: Remember to draw the icon when SS_CENTERIMAGE is set.

2006-08-10  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/shell32/shell32_No.rc:
	shell32: Updated Norwegian Bokmål resources.

	* dlls/mshtml/No.rc:
	mshtml: Updated Norwegian Bokmål resources.

2006-08-09  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c, dlls/msi/package.c:
	msi: Download install cabinet files if the msi package is remote.

2006-08-09  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/main.c,
	  dlls/crypt32/tests/main.c:
	crypt32: Add a couple stubs, and implement the undocumented
	I_CryptReadTrustedPublisherDWORDValueFromRegistry.

2006-08-09  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Surface pitch fix.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Draw buffers support.

2006-08-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/device.c, dlls/d3d9/tests/device.c, dlls/wined3d/device.c:
	wined3d: Minor cursor fixes.

2006-08-08  Clinton Stimpson <clinton@elemtech.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Fix crash with NULL lParam in EM_SETTEXTEX.

2006-08-08  Paul Chitescu <pchitescu@voip.null.ro>

	* dlls/wininet/netconnection.c:
	wininet: MSG_WAITALL support in NETCON_recv with SSL.

2006-08-09  Tijl Coosemans <tijl@ulyssis.org>

	* dlls/msvcrt/msvcrt.spec, dlls/msvcrt/process.c:
	msvcrt: Rename _execve to MSVCRT__execve.

2006-08-09  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/stabs.c, dlls/dbghelp/symbol.c:
	dbghelp: Made stabs parsing a bit more robust.
	Enhance dbghelp's robustness against bogus stabs sections found in
	meetro.exe (as reported by Jan Zerebecki).

2006-08-09  Robert Shearman <rob@codeweavers.com>

	* dlls/msi/database.c:
	msi: Support MSIDBOPEN_CREATEDIRECT and MSIDBOPEN_DIRECT in MSI_OpenDatabaseW.

	* dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Forward NdrClientCall to NdrClientCall2.
	NdrClientCall should be implemented as a separate function when
	NdrClientCall2 has been factorised enough.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Add some more traces and make the stack offsets easier to read in the
	stubless interpreter.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Change call_memory_sizer to preserve the buffer contents and
	initialise the memory size field to zero before calling the memory
	sizer function.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Set retval_ptr and allocate memory for out pointers for the old format
	stubless intepreter.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Support fixed arrays in calc_arg_size.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Complex types should be dereferenced an extra time in the old format
	stubless code.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Fix the stack offset for the old format stubless code when an object's
	method is being called.

	* dlls/ole32/defaulthandler.c:
	ole32: Add a check for NULL This->dataAdviseHolder in DefaultHandler_Stop.
	Cleanup DefaultHandler_GetCanonicalFormatEtc by using
	This->pDataDelegate instead of querying for IDataObject from
	This->pOleDelegate.

	* dlls/ole32/storage32.c:
	ole32: Fix a typo in IEnumSTATSTGImpl_QueryInterface where IStorage was being
	compared against instead of IEnumSTATSTG.

	* dlls/ole32/moniker.c:
	ole32: When comparing monikers use the abData field of MInterfacePointer
	as ulCntData doesn't include the size of its own field.

	* dlls/ole32/oleobj.c:
	ole32: Zero stg in case ADVF_NODATA is specified.
	Otherwise IDataObject_GetData fails before using it in
	DataAdviseHolder_SendOnDataChange.

	* include/rpcproxy.h:
	include: Add DLL registration macros to rpcproxy.h for dlldata.c files.

	* include/rpcproxy.h:
	include: Fix rpcproxy.h to allow the compilation of dlldata.c files.
	Add macros for generating the GetProxyDllInfo, DllGetClassObject and
	DllCanUnloadNow functions.

2006-08-09  Francois Gouget <fgouget@codeweavers.com>

	* dlls/ole32/regsvr.c:
	ole32: Register the CLSID_Picture_Metafile and CLSID_Picture_Dib ProgIDs.

	* dlls/msxml3/regsvr.c:
	msxml3: DOMFreeThreadedDocument's thread model is Both, not Free.

	* dlls/msi/regsvr.c:
	msi: Link the WindowsInstaller.Installer ProgId back to the right CLSID.

	* dlls/msi/regsvr.c:
	msi: Change the CLSID_IMsiServer ProgId to IMsiServer to match Windows.

2006-08-09  Francois Gouget <fgouget@free.fr>

	* dlls/mlang/regsvr.c, include/mlang.idl:
	mlang: Give the CLSIDs their proper names.
	Move CLSID_CMultiLanguage and CLSID_CMLangConvertCharset to mlang.idl.
	Leave CLSID_CMLangString in regsvr.c as MSDN claims it is not supported anymore.

2006-08-09  Francois Gouget <fgouget@codeweavers.com>

	* dlls/shell32/regsvr.c:
	shell32: Register CLSID_NetworkPlaces, CLSID_ShellFSFolder and
	CLSID_ShellFolderViewOC.

	* dlls/shdocvw/regsvr.c:
	shdocvw: Register CLSID_CUrlHistory and CLSID_Internet.

2006-08-09  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/menu.c:
	user: Fix the keyboard navigation and some graphical glitches for multi-column
	menus.

2006-08-09  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/winerror.h:
	winerror.h: Add some error codes.

2006-08-09  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, dlls/wined3d/pixelshader.c,
	  include/wine/wined3d_gl.h:
	wined3d: Fix GLSL regression / draw buffers support.

2006-08-09  Frank Richter <frank.richter@gmail.com>

	* dlls/shell32/shell32_De.rc:
	shell32: Tweak and update German translation.

2006-08-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/device.c:
	ddraw: Implement D3DRENDERSTATE_TEXTUREMAPBLEND.

	* dlls/wined3d/device.c:
	wined3d: Watch out for negative results when validating the shader constant
	range.

2006-08-08  Duane Clark <fpga@pacbell.net>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: In text mode a ctrl-z signals EOF.
	Spotted by David Hagood with test suggested by Dan Kegel.

2006-08-09  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/cursoricon.c, dlls/user/tests/Makefile.in,
	  dlls/user/tests/cursoricon.c:
	user: CopyImage: Handle the flags LR_COPYDELETEORG, LR_CREATEDIBSECTION,
	and LR_MONOCHROME.

2006-08-08  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/menu.c, dlls/user/tests/menu.c:
	user: Accept more flags in SetMenuItemInfo and ModifyMenu.
	- Accept MFT_MENU{BAR}BREAK, MFT_RADIOCHECK, MFT_RIGHTJUSTIFY, and
	MFT_RIGHTORDER in SetMenuItemInfo.
	- InsertMenu, AppendMenu, ModifiyMenu: Accept MF_HILITE flag (undocumented).
	- SetMenuItemInfo: Only use the lower word of the bitmap handle as
	documented in MSDN (Word 95 depends on this).
	- The type MFT_RADIOCHECK cannot be set if only the checkmarks are
	modified with SetMenuItemInfo.
	- New tests.

2006-08-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Use moniker in AsyncOpen if channel is NULL.

	* dlls/mshtml/nsio.c:
	mshtml: Set nsURI's moniker in NewURI.

	* dlls/mshtml/nsembed.c:
	mshtml: Set nsURI's moniker in OnStartURILoad.

	* dlls/mshtml/nsio.c:
	mshtml: Don't crash in QueryInterface if uri is NULL.

	* dlls/mshtml/nsio.c:
	mshtml: Added default GetSpec implementation.

	* dlls/mshtml/protocol.c, dlls/mshtml/tests/protocol.c:
	mshtml: Return INET_E_USE_DEFAULT_PROTOCOLHANDLER in ResProtocolInfo::CombineUrl.

	* dlls/mshtml/nsembed.c:
	mshtml: Continue searching for Gecko if loading xpcom.dll failed.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
	  dlls/mshtml/persist.c:
	mshtml: Store IMoniker in BSCallback.

	* dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c:
	mshtml: Added GetMoniker and SetMoniker methods to nsIWineURI.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h, dlls/mshtml/view.c:
	mshtml: Create "Internet Explorer_Hidden" window.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsio.c, dlls/mshtml/persist.c:
	mshtml: Load the page from moniker if we don't have nsIChannel.

	* dlls/shdocvw/classinfo.c:
	shdocvw: Return DIID_DWebBrowserEvents in GetGUID for WebBrowser_V1.

2006-08-09  Huw Davies <huw@codeweavers.com>

	* dlls/shlwapi/tests/path.c:
	shlwapi: Add tests for PathUnquoteSpaces.

2006-08-09  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/ntlm.c:
	secur32: Make ntlm tests run on both WinXP and Win2k.

	* dlls/secur32/tests/ntlm.c:
	secur32: Add tests for MakeSignature, VerifySignature, EncryptMessage and
	DecryptMessage.

2006-08-09  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shelllink.c, dlls/shell32/tests/shelllink.c:
	shell32: IShellLink::SetPath removes quotes from the path.

	* dlls/shell32/tests/shelllink.c:
	shell32: Fix test compilation with MSVC6.

2006-08-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/user_private.h, include/wine/server_protocol.h,
	  server/protocol.def, server/queue.c, server/trace.c:
	server: Make the message extra info 64 bits on Win64.

	* dlls/user/message.c, dlls/winex11.drv/keyboard.c,
	  dlls/winex11.drv/mouse.c, include/wine/server_protocol.h,
	  server/protocol.def, server/queue.c, server/request.h,
	  server/trace.c:
	server: Split the queuing of hardware messages into a separate
	send_hardware_message request.

2006-08-03  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/recyclebin.c:
	shell32: Add recyclebin.c file missing in previous commit.

	* dlls/shell32/shell32_Pl.rc:
	shell32: Update Polish translation.

	* dlls/shell32/regsvr.c, dlls/shell32/shres.rc:
	shell32: Add a custom icon for the trash folder.

	* dlls/shell32/trash.c:
	shell32: Add trash items enumeration.

	* dlls/shell32/Makefile.in, dlls/shell32/regsvr.c,
	  dlls/shell32/shell32_En.rc, dlls/shell32/shell32_main.h,
	  dlls/shell32/shellole.c, dlls/shell32/shresdef.h,
	  dlls/shell32/trash.c, dlls/shell32/xdg.h:
	shell32: Add a Trash virtual folder.

2006-08-06  Yong Chi <yong28chi@yahoo.com>

	* dlls/ddraw/direct3d.c:
	ddraw: Fix for incorrect return value from wined3d.

2006-08-09  Alexandre Julliard <julliard@winehq.org>

	* .gitignore, Make.rules.in:
	Make.rules: Added rules for client/proxy/server generation from IDL files.

	* programs/explorer/desktop.c:
	explorer: Never paint the desktop when using the X root window.

2006-08-08  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/oid.c:
	crypt32: Trace key type in CryptFindOIDInfo.

2006-08-09  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/user/resources/user32_Ko.rc:
	user32: Updated Korean resource.

2006-08-09  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msvcrt/console.c, dlls/msvcrt/cpp.c, dlls/msvcrt/exit.c,
	  dlls/msvcrt/file.c, dlls/msvcrt/process.c:
	msvcrt: Remove redundant NULL checks before MSVCRT_free.

	* dlls/comdlg32/filedlg.c:
	comdlg32: Remove redundant NULL checks before MemFree.

2006-08-08  Matt Finnicum <mattfinn@gmail.com>

	* programs/wordpad/wordpad.c:
	wordpad: Request WS_VSCROLL now that riched20 supports it.

	* dlls/riched20/editor.c, dlls/riched20/paint.c:
	riched20: Implement EM_SHOWSCROLLBAR, EM_SETSCROLLPOS, ES_DISABLENOSCROLL,
	and WS_VSCROLL.

2006-08-08  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/package.c:
	msi: Add tests for the RemoveFiles action.

2006-08-08  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user/tests/sysparams.c:
	user/tests: Write-strings warnings fix.

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/tests/ordinal.c,
	  dlls/shlwapi/tests/shreg.c:
	shlwapi/tests: Write-strings warnings fix.

2006-08-08  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/tests/Makefile.in, dlls/secur32/tests/main.c,
	  dlls/secur32/tests/ntlm.c:
	secur32: Move NTLM tests to ntlm.c to avoid cluttering main.c with NTLM-specific
	tests.

2006-08-08  Juan Lang <juan_lang@yahoo.com>

	* dlls/rsaenh/rsaenh.c, dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Test and fix CryptEncrypt with NULL buffer.

2006-08-08  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: ScriptItemize will break up the string into script_items.

2006-08-07  Francois Gouget <fgouget@codeweavers.com>

	* configure, configure.ac:
	configure: Fix the linux/ipx.h detection.

2006-08-08  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: Volume texture addressing caps.

	* dlls/wined3d/directx.c:
	wined3d: Shader declaration cap fixes.

2006-08-08  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/run.c:
	riched20: Modify ME_CharFromPoint to work properly with password controls.

2006-08-08  Samuel Lidén Borell <samuellb@bredband.net>

	* dlls/mshtml/Sv.rc, dlls/mshtml/rsrc.rc:
	mshtml: Add Swedish translation.

2006-08-08  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Shader cap fixes.

2006-08-04  Robert Shearman <rob@codeweavers.com>

	* dlls/user/user_main.c, programs/explorer/desktop.c:
	user: Make ExitWindowsEx asynchronous by deferring the real work to the
	explorer process.

2006-08-08  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shlfileop.c:
	shell32: Use case insensitive comparisons when comparing paths.

2006-08-07  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/files.c,
	  dlls/msi/msipriv.h, dlls/msi/package.c:
	msi: Fix the compressed files logic.
	If the compressed file attribute is not set, use the Word Count
	property to determine if files are compressed.

2006-08-08  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/shell32/shell32_Ko.rc:
	shell32: Updated Korean resource.

2006-08-08  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/device.c:
	wined3d: Stub out remaining renderstates.

	* dlls/wined3d/device.c:
	wined3d: Correct check for GL ext. support in MULTISAMPLEANTIALIAS.

	* dlls/wined3d/device.c:
	wined3d: Add missing newline at the end of traces.

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_main.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Registry setting for the amount of simulated texture memory.
	Set VideoMemorySize under HKCU\Software\Wine\Direct3D to amount in MB
	as string.

2006-08-07  Francois Gouget <fgouget@codeweavers.com>

	* tools/wine.inf:
	wine.inf: lnkfile\shellex\ContextMenuHandlers\... is not supposed to have a
	default value.

	* tools/wine.inf:
	wine.inf: Don't create a fake exe and change the name at the same time.
	This confuses installers that think said exes can be run when this is
	not the case and cannot work.

	* tools/wine.inf:
	wine.inf: Use %CurrentVersionNT% wherever applicable.

	* dlls/mlang/regsvr.c:
	mlang: Fix the 'Multi Language String' CLSID: there is no
	{44EC053A-B70D-11D0-B188-00AA0038C969} CLSID in the Windows registry.

	* include/shlguid.h:
	shell32: Add CLSID_CUrlHistory and CLSID_CURLSearchHook.

	* dlls/inseng/Makefile.in, dlls/inseng/inseng.spec,
	  dlls/inseng/inseng_main.c, dlls/inseng/regsvr.c:
	inseng: Switch to the standard regsvr.c registration code.
	Now the CLSID_DLManager and CLSID_ActiveSetupEng keys get proper display names.
	This also gives us DllUnregisterServer() for free.

	* dlls/itss/regsvr.c:
	itss: Register CLSID_ITSProtocol. Tweak the registration code (via copy/paste)
	so we can register its VersionIndependentProgID.

	* dlls/oleaut32/regsvr.c:
	oleaut32: Set some missing ProxyStubClsid fields.

	* dlls/ole32/regsvr.c:
	ole32: Add a BaseInterface where needed.

2006-08-07  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: Textureops caps fix.

2006-08-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user/tests/sysparams.c, dlls/user/tests/text.c:
	user/tests: Write-strings and cast-qual warnings fix.

	* dlls/shell32/dialogs.c, dlls/shell32/shellord.c:
	shell32: Write-strings warnings fix.

2006-08-07  James Hawkins <truiken@gmail.com>

	* dlls/wintrust/wintrust_main.c:
	wintrust: Always return ERROR_SUCCESS in WinVerifyTrust.

	* dlls/msi/tests/package.c:
	msi: Add tests for MsiGetProperty.

2006-08-07  Alexandre Julliard <julliard@winehq.org>

	* aclocal.m4, configure:
	configure: Fixed soname detection on MacOS by using otool instead of ldd.

2006-08-05  Kevin Koltzau <kevin@plop.org>

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/hid/Makefile.in, dlls/hid/hid.spec, dlls/hid/main.c,
	  dlls/hid/version.rc:
	hid: Initial implementation.

2006-08-07  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/wininet/internet.c:
	wininet: Add INTERNET_OPTION_SECURITY_FLAGS stub to InternetSetOptionW.

2006-08-07  Krzysztof Foltman <wdev@foltman.com>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h,
	  dlls/riched20/editstr.h, dlls/riched20/paint.c, dlls/riched20/para.c,
	  dlls/riched20/undo.c, dlls/riched20/wrap.c:
	riched20: New, clean, simple selection repaint logic - should fix all outstanding
	refresh issues.

2006-08-07  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/d3d9.spec, dlls/d3d9/d3d9_main.c:
	d3d9: Stub D3DPERF_ functions.

	* dlls/wined3d/query.c, include/wine/wined3d_gl.h:
	wined3d: Allow async occlusion queries.

	* dlls/wined3d/query.c:
	wined3d: Improve a few query traces.
	The query type is useful to have in query TRACEs.
	IWineD3DQueryImpl_GetDataSize isn't really a stub.

	* dlls/wined3d/query.c:
	wined3d: Check Occlusion query GL calls.

	* dlls/wined3d/utils.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_types.h:
	wined3d: Add a couple of traces to the vertexdeclaration creation code.

2006-08-07  Alexandre Julliard <julliard@winehq.org>

	* Make.rules.in, Makefile.in, dlls/Makedll.rules.in,
	  dlls/Makeimplib.rules.in, dlls/wineps.drv/Makefile.in,
	  documentation/Makefile.in, fonts/Makefile.in, include/Makefile.in,
	  libs/wine/Makefile.in, loader/Makefile.in, programs/Makefile.in,
	  programs/Makeprog.rules.in, programs/winedbg/Makefile.in,
	  programs/winemenubuilder/Makefile.in, server/Makefile.in,
	  tools/Makefile.in, tools/widl/Makefile.in, tools/winapi/Makefile.in,
	  tools/winebuild/Makefile.in, tools/winedump/Makefile.in,
	  tools/winegcc/Makefile.in, tools/wmc/Makefile.in,
	  tools/wrc/Makefile.in:
	makefiles: Use make dependencies to create installation directories.
	This avoids a lot of redundant calls to mkinstalldirs.

	* dlls/ntdll/signal_i386.c:
	ntdll: Get rid of the Linux legacy signal stack switching.
	It doesn't work right in 32-bit code anyway.

2006-08-05  Tijl Coosemans <tijl@ulyssis.org>

	* dlls/ntdll/signal_i386.c:
	ntdll: Cleanup signal_i386.c a bit and fix *BSD.

2006-08-07  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/defaulthandler.c:
	ole32: Tell the advise holder what the data delegate is in DefaultHandle_DAdvise
	if we are already connected.

	* dlls/ole32/oleobj.c:
	ole32: Finish off delegate notifications in the data advise holder.
	Advise the data delegate object when new advises come in on the data
	advise holder, not just when connecting.
	Unadvise the data delegate object when unadvising a connection on the
	data advise holder, when destructing the data advise holder and when
	disconnecting.

2006-08-06  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Signal event after we queued an event. Not before.

2006-08-05  Robert Reif <reif@earthlink.net>

	* dlls/netapi32/Makefile.in, dlls/netapi32/access.c,
	  dlls/netapi32/local_group.c, dlls/netapi32/netapi32.spec,
	  include/lmaccess.h:
	netapi32: Add stubs for remaining NetLocalGroup* functions.
	Move existing NetLocalGroup* functions to local_group.c.
	Add stubs for remaining NetLocalGroup* functions.

2006-08-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dwarf.c:
	dbghelp: Missing bits from previous patch about variables with constant values.

2006-08-07  Alexandre Julliard <julliard@winehq.org>

	* Make.rules.in, Makefile.in, documentation/Makefile.in:
	Make.rules: Make all submake invocations silent for consistency.

	* dlls/ntdll/directory.c:
	ntdll: Fixed buffer overflow in NtQueryDirectoryFile optimisation.

2006-08-06  Francois Gouget <fgouget@free.fr>

	* dlls/usp10/tests/usp10.c:
	usp10/tests: Add trailing '\n's to ok() calls.

	* dlls/ddraw/direct3d.c, dlls/ddraw/tests/refcount.c,
	  dlls/mciavi32/mciavi.c, dlls/mciseq/mcimidi.c,
	  dlls/mciwave/mciwave.c, dlls/msi/msi.c, dlls/ole32/compobj.c,
	  dlls/shell32/trash.c, dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/vertexbuffer.c, include/mlang.idl:
	Assorted spelling fixes.

2006-08-06  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: texture caps fixes.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: General constant caps fix.

2006-08-05  Tijl Coosemans <tijl@ulyssis.org>

	* configure, configure.ac, include/config.h.in, include/wine/pthread.h,
	  loader/pthread.c:
	loader/pthread: Added pthread_attr_get_np support.

2006-08-07  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Fix the dialog centering logic.

	* dlls/kernel/powermgnt.c:
	kernel32: Change some FIXMEs to WARNs.

	* dlls/cabinet/cabinet.h, dlls/cabinet/cabinet_main.c,
	  dlls/cabinet/tests/extract.c:
	cabinet: Fix and test the undocumented Extract function.
	The paths are MAX_PATH length.
	The last field is list of files which is checked when flags = 0.
	Add tests for the flag in the file list.

	* dlls/cabinet/cabinet_main.c:
	cabinet: Split the cabinet path for FDICopy.

2006-08-07  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

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

2006-08-05  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/device.c, dlls/d3d9/device.c:
	d3d: Don't crash when SetRenderTarget() is called with a NULL pSurface.

	* dlls/wined3d/vertexshader.c:
	wined3d: Fix D3DCOLOR swizzling in shaders.

	* dlls/wined3d/drawprim.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Delay vertex shader compilation until the shader is first used.

2006-08-05  Tijl Coosemans <tijl@ulyssis.org>

	* dlls/ntdll/directory.c:
	ntdll: Add FreeBSD default serial port device.

	* dlls/oleaut32/tests/vartype.c:
	oleaut32/tests: Test relative error, not absolute.

2006-08-05  Robert Reif <reif@earthlink.net>

	* include/winnt.h:
	winnt.h: Add some more RIDs.

2006-08-05  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/setupapi/tests/devinst.c, dlls/setupapi/tests/query.c:
	setupapi/tests: Write-strings warnings fix.

	* dlls/secur32/tests/main.c, dlls/secur32/tests/schannel.c:
	secur32/tests: Write-strings warnings fix.

2006-08-05  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/msvcrt/msvcrt.spec:
	msvcrt: Some more exports requested from msvcr80.dll.

2006-08-05  Francois Gouget <fgouget@codeweavers.com>

	* tools/wine.inf:
	wine.inf: We should not override existing associations.

	* dlls/mshtml/mshtml.inf:
	mshtml: Fix the .jfif Content Type.

2006-08-04  Krzysztof Foltman <wdev@foltman.com>

	* dlls/riched20/caret.c, dlls/riched20/paint.c:
	riched20: Ensure text is wrapped before invalidating selection.

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

	* libs/.gitignore, libs/wine/Makefile.in:
	libwine: Add a minor number to the library filename for future extensions.

	* configure, configure.ac, libs/.gitignore, libs/Makelib.rules.in,
	  libs/wine/Makefile.in:
	libs: Get rid of Makelib.rules since we only have one library now.
	Merge all the rules into the libwine makefile.

2006-08-04  Robert Reif <reif@earthlink.net>

	* dlls/netapi32/access.c, dlls/netapi32/netapi32.spec:
	netapi32: Add stub for NetUserGetLocalGroups.

	* dlls/netapi32/access.c:
	netapi32: Return an error for unimplemented levels in NetUserGetInfo.

	* dlls/netapi32/access.c, dlls/netapi32/netapi32.spec:
	netapi32: Add stub for NetLocalGroupEnum.

	* dlls/wtsapi32/wtsapi32.c, dlls/wtsapi32/wtsapi32.spec:
	wtsapi32: Add some stubs.

2006-08-04  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/install.c, dlls/msi/msipriv.h, dlls/msi/tests/package.c,
	  include/msiquery.h:
	msi: Write-strings warnings fix.

2006-08-05  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, dlls/wined3d/volume.c,
	  include/wine/wined3d_gl.h:
	wined3d: Volume textures fix.

2006-08-04  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: Raster caps fix.

	* dlls/wined3d/directx.c:
	wined3d: Primitive misc caps fix.

2006-08-04  Kevin Koltzau <kevin@plop.org>

	* dlls/setupapi/devinst.c:
	setupapi: Create an empty list when getting device interface classes.

2006-08-04  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c, dlls/riched20/editor.h, dlls/riched20/editstr.h,
	  dlls/riched20/paint.c, dlls/riched20/run.c, dlls/riched20/string.c,
	  dlls/riched20/tests/editor.c:
	riched20: Implement EM_SETPASSWORDCHAR and EM_GETPASSWORDCHAR.

2006-08-04  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/widl.c, tools/widl/write_msft.c:
	widl: Replace strdup, malloc and realloc with xstrdup, xmalloc and xrealloc.

2006-08-04  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/iphlpapi/Makefile.in:
	configure: Only link against libresolv where necessary.

	* configure, configure.ac, include/config.h.in, server/fd.c:
	server: Added support for kqueue() as an alternative to poll() on FreeBSD.

2006-08-04  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/basetexture.c:
	wined3d: Basetexture anisotropic fix.

	* dlls/wined3d/directx.c:
	wined3d: Fix a number of badly reported caps.

2006-08-04  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/user/tests/win.c, dlls/user/win.c:
	user: Call SetLastError in CreateWindowEx when WS_CHILD is set with no parent.

	* dlls/user/tests/win.c:
	user: Add a test for CreateWindowEx.

2006-08-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/win.c:
	user: Don't bother checking the WS_VISIBLE style on the desktop window.

2006-08-04  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Implement ScriptGetGlyphABCWidth.
	Add a test for ScriptGetGlyphABCWidth and ScriptCacheGetHeight.

2006-08-04  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/security.c:
	advapi32: Add more SID tests.

2006-08-04  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Make the error output on a failed binding more informative
	by dumping information about the interface it is trying to bind to.

	* dlls/urlmon/Makefile.in, dlls/urlmon/urlmon.spec,
	  dlls/urlmon/urlmon_main.c:
	urlmon: Delay-load cabinet.dll as native urlmon doesn't import it.

2006-08-04  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c:
	usp10: Implement ScriptIsComplex.

2006-08-03  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y,
	  tools/widl/widl.c, tools/widl/widl.h:
	widl: Generate GUID (infile_i.c) files.

2006-08-03  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Use the initial dialog position values in the database when creating the
	dialog window.

2006-08-04  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c:
	usp10: Fix glyph comparsion between tests.

2006-08-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/server.c:
	ntdll: Fix a race condition at thread exit.

2006-08-03  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/varformat.c:
	oleaut32: Removes extra string allocation for varformat:VarMonthName.

2006-08-03  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/directory.c:
	ntdll: Add an optimisation for NtQueryDirectoryFile to not read the
	whole directory if the mask doesn't contain any wildcards and the file
	exists on in the directory with the same case as the mask.

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

	* dlls/oledlg/oledlg_Ko.rc:
	oledlg: Updated Korean resource.

2006-08-03  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/lsa.c, dlls/advapi32/security.c, include/ntsecapi.h:
	advapi32: Add a computer SID to the registry.

	* dlls/ntdll/ntdll.spec, dlls/ntdll/rtl.c, include/winternl.h:
	ntdll: Fix some function arguments.

2006-08-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Surface pitch fix.

2006-08-03  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c:
	mshtml: Fix handling offset in BSCallback.

2006-08-03  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Disable vertex arrays after we're done drawing from them.
	After drawing from a vertex array we should disable them, to prevent
	the next draw calls from potentially reading past their ends. This
	also moves the disabling of vertex attrib arrays (for shaders) into
	its own function.

2006-08-02  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/mshtml/mshtml_private.h, dlls/shdocvw/shdocvw.h,
	  tools/widl/parser.y:
	widl: Write forward declarations for coclass definitions.

2006-08-03  Krzysztof Foltman <wdev@foltman.com>

	* dlls/riched20/editor.c:
	riched20: Make EM_LINELENGTH work correctly for non-final paragraphs containing
	exactly one screen line.

	* dlls/riched20/editor.c:
	riched20: Make EM_GETLINE work properly in 1.0 emulation mode.

	* dlls/riched20/editor.c:
	riched20: Ctrl+A should be allowed in read-only controls too.

2006-08-03  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/navigate.c:
	mshtml: Added nsInputStream::Read implementation.

2006-08-03  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/stg_bigblockfile.c, dlls/ole32/storage32.c,
	  dlls/ole32/storage32.h:
	ole32: Ensure that a returned free block is valid in storage.
	Otherwise, an IStream_SetSize call followed by an IStream_Read call
	could fail with STG_E_DOCFILECORRUPT.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h,
	  dlls/ole32/marshal.c, dlls/ole32/stubmanager.c:
	ole32: Fix CoLockObjectExternal to respect fLastUnlockReleases.

	* dlls/msi/action.c:
	msi: Fix the creation of shortcuts with a null icon index by mapping it to zero.

2006-08-03  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvfw32/msvideo16.c:
	msvfw32: Write-strings warning fix.

	* dlls/ole32/tests/clipboard.c:
	ole32/tests: Write-strings warnings fix.

	* dlls/riched20/tests/editor.c:
	riched20/tests: Write-strings warnings fix.

2006-08-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dwarf.c:
	dbghelp: Properly handle variable with const value (ie without location)
	in dwarf code.

2006-08-03  Alexandre Julliard <julliard@winehq.org>

	* server/fd.c:
	server: Abstract the epoll functions a bit more.

2006-08-03  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* include/ntquery.h, include/shlguid.h:
	shell32: Add property ids to header files.

2006-08-03  Francois Gouget <fgouget@codeweavers.com>

	* include/shldisp.idl:
	include: Add the ShellFolderViewOC coclass.

2006-08-03  Stefan Siebert <stefan.siebert@web.de>

	* dlls/oleaut32/typelib.c:
	oleaut32: GetTypeInfoType - Return TYPE_E_ELEMENTNOTFOUND if index out of bounds.

2006-08-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/hlink/link.c:
	hlink: Avoid double computation of the string length.

2006-08-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/init.c:
	winex11.drv: Comment out the XCloseDisplay call on process detach.
	It has a tendency to trigger X11 bugs, and it's not really useful anyway.

2006-08-02  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/olefont.c, dlls/oleaut32/tests/olefont.c:
	oleaut32: Implement function olefont:OLEFontImpl_IsEqual.

	* dlls/oleaut32/tests/olefont.c:
	oleaut32: Conformance test for olefont:OLEFontImpl_IsEqual.

2006-08-03  Robert Reif <reif@earthlink.net>

	* include/winnt.h:
	winnt.h: Add missing define.

2006-08-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Paletted texture support.

2006-08-03  Mike McCormack <mike@codeweavers.com>

	* dlls/ddraw/Makefile.in, dlls/ddraw/main.c:
	ddraw: Don't link to wined3d, load it at runtime.
	This lets ddraw dlls built on a machine with OpenGL present run on other
	machines that may not have the OpenGL libraries installed.

2006-08-02  Thomas Kho <tkho@ucla.edu>

	* server/thread.c:
	server: Remove unused thread_apc member.

2006-08-03  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

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

2006-08-02  Huw Davies <huw@codeweavers.com>

	* fonts/ms_sans_serif.sfd:
	fonts: Add that extra pixel to the variants of 'e' too.

2006-08-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/riched20/editor.c:
	riched20: Fixed handling of window private data for Win64.

2006-08-02  Krzysztof Foltman <wdev@foltman.com>

	* dlls/riched20/editor.c:
	riched20: Handle incorrect calls of window procedure.

2006-08-01  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/Makefile.in, dlls/advapi32/tests/lsa.c:
	advapi32: Check returned data from LsaQueryInformationPolicy.

2006-08-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/tests/db.c:
	msi/tests: Write-strings warnings fix.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Write-strings warning fix.

2006-08-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/thunk.c:
	kernel32: Make some functions static.

	* dlls/hhctrl.ocx/chm.c, dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Make some functions static.

	* dlls/user/spy.c:
	user: Add some missing internal Wine messages to the message spy.

2006-08-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/hlink/hlink.spec, dlls/hlink/hlink_main.c, include/hlink.idl:
	hlink: Added HlinkTranslateURL tub implementation.

	* dlls/hlink/hlink.spec, dlls/hlink/hlink_main.c,
	  dlls/hlink/tests/hlink.c, include/hlink.idl:
	hlink: Added HlinkIsShortcut implementation.

	* dlls/ole32/moniker.c:
	ole32: Clean up OleRun.

2006-08-02  Krzysztof Foltman <wdev@foltman.com>

	* dlls/riched20/run.c:
	riched20: Added short descriptions to functions in run.c, just in case
	anybody had any doubts about what they actually do.

2006-08-02  Huw Davies <huw@codeweavers.com>

	* fonts/ms_sans_serif.sfd:
	fonts: By popular demand, add an extra pixel to the smallest strike of 'e'.

2006-08-02  Stefan Leichter <Stefan.Leichter@camline.com>

	* programs/winetest/Makefile.in:
	winetest: Added hlink tests.

2006-08-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/message.c, dlls/user/win.c, include/win.h,
	  include/wine/server_protocol.h, server/protocol.def, server/trace.c:
	user: Implementation of Get/SetWindowLongPtr for 64-bit platforms.
	Also use the same code for Get/SetWindowWord.
	Based on a patch by Ge van Geldorp.

2006-08-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/classes.c:
	msi: Only ever write the long path for InProcServers.

	* dlls/msi/classes.c:
	msi: Register advertised components too.

2006-08-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/uxtheme/system.c:
	uxtheme: Make some variables static.

	* dlls/oledlg/insobjdlg.c:
	oledlg: Make a string static.

	* dlls/kernel/editline.c:
	kernel32: Make the keymap entries const.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/git.c,
	  dlls/ole32/ole2.c, dlls/ole32/storage32.c, dlls/ole32/storage32.h:
	ole32: Make some functions and variables static.

	* dlls/msxml3/domdoc.c, dlls/msxml3/factory.c, dlls/msxml3/nodelist.c:
	msxml3: Make some functions and variables static.

	* dlls/opengl32/wgl.c, dlls/opengl32/wgl_ext.c, dlls/opengl32/wgl_ext.h:
	opengl32: Make some functions and variables static.

	* dlls/glu32/glu.c:
	glu32: Make some functions static.

	* dlls/dsound/buffer.c, dlls/dsound/capture.c, dlls/dsound/dsound.c,
	  dlls/dsound/dsound_main.c, dlls/dsound/dsound_private.h,
	  dlls/dsound/duplex.c, dlls/dsound/mixer.c, dlls/dsound/primary.c:
	dsound: Make some functions static.

	* dlls/winex11.drv/desktop.c, dlls/winex11.drv/settings.c,
	  dlls/winex11.drv/x11ddraw.c, dlls/winex11.drv/x11ddraw.h,
	  dlls/winex11.drv/x11drv.h, dlls/winex11.drv/xrandr.c,
	  dlls/winex11.drv/xvidmode.c:
	winex11.drv: Make some functions and variables static, and get rid of x11ddraw.h.

2006-08-01  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/db.c:
	msi: Add tests for SQL query markers.

	* dlls/msi/files.c:
	msi: A file that does not have the msidbFileAttributesCompressed bit set should
	be considered non-compressed.

	* dlls/msi/package.c, dlls/msi/tests/format.c:
	msi: Don't crash if an empty record is given to MsiProcessMessage.

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/tests/package.c:
	msi: Set the install state to INSTALLSTATE_LOCAL for features with compressed
	files.

2006-08-01  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/lsa.c:
	advapi32: LsaQueryInformationPolicy: do the right thing for both domains
	and accounts.

2006-08-01  Juan Lang <juan_lang@yahoo.com>

	* dlls/wintrust/Makefile.in, dlls/wintrust/wintrust.spec,
	  dlls/wintrust/wintrust_main.c:
	wintrust: Implement TrustIsCertificateSelfSigned.

	* dlls/crypt32/str.c:
	crypt32: Support more types in CertRDNToStr.

2006-08-02  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/msvfw32/msvfw32_Ko.rc:
	msvfw32: Updated Korean resource.

2006-08-01  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/shell32/version.h:
	shell32: Fix the file version string of the version resource.

2006-08-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/kernel/tests/process.c:
	kernel/tests: Write-strings warnings fix.

	* dlls/kernel/oldconfig.c, dlls/kernel/thunk.c:
	kernel: Write-strings warnings fixes.

2006-08-01  Dan Hipschman <dsh@linux.ucla.edu>

	* programs/oleview/typelib.c:
	oleview: Initialize TVITEM.lParam to NULL in EnumFuncs.

2006-08-01  Francois Gouget <fgouget@codeweavers.com>

	* dlls/mshtml/mshtml.inf:
	mshtml: Remove unwarranted REG_EXPAND_SZ flags.

2006-08-01  Alexandre Julliard <julliard@winehq.org>

	* libs/port/memmove.c:
	libport: Fixed invalid lvalue accesses in memmove.

2006-08-01  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

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

2006-08-01  Huw Davies <huw@codeweavers.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Limit the width of the watermark to 164 pixels.

2006-07-31  Huw Davies <huw@codeweavers.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Limit the size of the header bitmap to 49x49.

	* dlls/comctl32/propsheet.c:
	comctl32: Invalidate the header area so that updated titles will be drawn.

	* dlls/comctl32/propsheet.c:
	comctl32: Wordwrap the sub title.

	* dlls/comctl32/propsheet.c:
	comctl32: The titles are already converted to unicode so always use DrawTextW
	to write them.

2006-08-01  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/trash.c:
	shell32: Send directories and non-regular files to the trash.

2006-08-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/win.c:
	user: Add a couple of missing bits to the SetWindowLong test.

2006-08-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmltextcont.c, dlls/mshtml/nsiface.idl:
	mshtml: Added implementation of put_scrollTop and put_scrollLeft.

	* dlls/mshtml/htmlbody.c, dlls/mshtml/htmltextcont.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Store HTMLElement pointer in HTMLTextContainer.

2006-08-01  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/lsa.c:
	advapi32: More LsaQueryInformationPolicy tests.

2006-08-02  Mike McCormack <mike@codeweavers.com>

	* dlls/hlink/Makefile.in, dlls/hlink/link.c:
	hlink: Use ShellExecute to start the link if we can't get a IHlinkTarget.

2006-08-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi/font.c:
	gdi: Fixed buffer overflow in GetCharABCWidthsI.

	* Make.rules.in, tools/makedep.c:
	makedep: Always search for includes in the standard directories, even without
	-I option.

	* Make.rules.in, tools/makedep.c:
	makedep: Don't add dependencies for system headers.

	* tools/makedep.c:
	makedep: Get rid of restrictions on line lengths. Merge lines that end in
	a backslash.

	* tools/makedep.c:
	makedep: Convert to standard Wine lists.

2006-07-28  Robert Shearman <rob@codeweavers.com>

	* dlls/msxml3/regsvr.c:
	msxml3: Add progids for MSXML.DOMDocument and MSXML.FreeThreadedDOMDocument.
	Don't delete the progid key when unregistering coclasses - this is now
	done in unregister_progids.

	* dlls/msxml3/regsvr.c:
	msxml3: Separate the writing of progids from the writing of classes.
	This allows writing multiple progids that refer to one class.
	Support writing out Version and VersionIndependentProgId keys for classes.

2006-07-28  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/kernel/format_msg.c:
	kernel: Wsign-compare warning fix.

2006-07-31  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/lsa.c:
	advapi32: LsaQueryInformationPolicy update.
	Update LsaQueryInformationPolicy to use correct computer name and SID.
	Add support for PolicyDnsDomainInformation.

2006-08-02  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/hlink/Makefile.in, dlls/hlink/tests/Makefile.in,
	  dlls/hlink/tests/hlink.c:
	hlink: Add a short test case.

	* dlls/hlink/link.c:
	hlink: Use CoTaskMemAlloc when returning memory to a caller.

	* dlls/hlink/link.c:
	hlink: Create a strdupW function and use it.

2006-07-31  Thomas Kho <tkho@ucla.edu>

	* dlls/msi/dialog.c:
	msi: Wake dialog on messages from external threads.

2006-07-31  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: Fix a couple install state test cases.
	- Correctly handle the msidbComponentAttributesOptional component attribute.
	- Don't set a component's state to INSTALLSTATE_LOCAL if the
	msidbComponentAttributesSourceOnly attribute is provided.

	* dlls/msi/tests/package.c:
	msi: Fix the add_feature_entry helper function.

2006-07-31  Detlef Riekenberg <wine.dev@web.de>

	* include/ddk/winsplp.h:
	winsplp.h: Remove FAR, use W structs, fix typo.

2006-07-31  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dinput/tests/keyboard.c:
	dinput/tests: Write-strings warning fix.

	* dlls/dsound/tests/dsound8.c:
	dsound/tests: Write-strings warning fix.

2006-07-31  Robert Shearman <rob@codeweavers.com>

	* dlls/user/tests/win.c, dlls/user/win.c:
	user: Ignore setting NULL window procs inside SetWindowLong.
	Add tests for SetWindowLong error cases.

2006-07-31  Duane Clark <fpga@pacbell.net>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Fix fgetwc/s in binary mode.

	* dlls/msvcrt/tests/file.c:
	msvcrt: Test fgetwc/s in binary mode.

	* dlls/msvcrt/file.c:
	msvcrt: Remove read_i loop and fix fread.

2006-07-31  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.y:
	widl: Set type_t kind field correctly for all types.

	* tools/widl/parser.y:
	widl: Set defined flag for coclasses.

2006-07-31  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/setupapi.spec, dlls/setupapi/stubs.c:
	setupapi: Add a stub implementation of SetupGetSourceInfo.

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: Set the install state to INSTALLSTATE_LOCAL for components with compressed
	files.

2006-07-31  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Improve dump_DispParms.

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: Add some validation for the DISPPARAMS structure in ITypeInfo::Invoke.

	* dlls/ole32/ole2.c, dlls/ole32/ole32.spec:
	ole32: Implement OleNoteObjectVisible as described by MSDN.

	* dlls/ole32/storage32.c:
	ole32: Remove a check on the share mode for the NULL filename case as the
	check is already done earlier in StgCreateDocfile.

2006-07-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c, dlls/ntdll/loader.c, include/winternl.h:
	ntdll: Move the calling of the process entry point back to kernel32.
	Apparently some copy protection stuff relies on that.
	This reverts commit 50fca716fddf5af03b4c91ae5e950daff5fbdf2a.

	* dlls/ntdll/loader.c:
	ntdll: Set initial module refcount to 1 to avoid unloading during imports fixup.

	* loader/preloader.c:
	preloader: Added support for the new style DT_GNU_HASH symbol table.

	* loader/preloader.c:
	preloader: Fixed type checking in symbol lookup.

	* loader/preloader.c:
	preloader: Properly use the ELF hash table when looking up a symbol.

2006-07-31  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/shdocvw_main.c,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser::Invoke implementation.

	* dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added SetExtent and GetExtent implementation.

2006-07-31  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/surface.c:
	wined3d: Fix potential NULL dereference in IWineD3DSurfaceImpl_LockRect.

	* dlls/wined3d/device.c:
	wined3d: Avoid NULL dereference.

2006-07-31  Thomas Kho <tkho@ucla.edu>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Implement EM_GETLINE.

2006-08-01  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/storage32.c:
	ole32: Use IsGUIDEqual to compare IIDs.

2006-07-31  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/mmap.c:
	libwine: Better heuristic for finding the top of the address space on Linux.

2006-07-31  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/security.c:
	advapi32: Add computer sid support to LookupAccountSidW.

	* dlls/advapi32/advapi32_misc.h, dlls/advapi32/security.c:
	advapi32: Add more helper functions.
	Add ADVAPI_GetComputerSid.

2006-07-31  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/regsvr.c:
	shdocvw: Register SHDocVw typelib.

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/shdocvw.rc,
	  dlls/shdocvw/shdocvw_v1.idl:
	shdocvw: Added typelib.

2006-07-19  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shell32_Pl.rc:
	shell32: Update the Polish translation.

	* dlls/shell32/shell32_En.rc, dlls/shell32/shell32_main.h,
	  dlls/shell32/shfldr_fs.c, dlls/shell32/shfldr_unixfs.c,
	  dlls/shell32/shlfileop.c, dlls/shell32/shresdef.h:
	shell32: Call the trashing code from SHFileOperationW.

	* dlls/shell32/Makefile.in, dlls/shell32/trash.c, dlls/shell32/xdg.c,
	  dlls/shell32/xdg.h:
	shell32: Add trashing support functions.

	* dlls/shell32/Makefile.in, dlls/shell32/shell32_En.rc,
	  dlls/shell32/shell32_main.h, dlls/shell32/shlfileop.c,
	  dlls/shell32/shres.rc, dlls/shell32/shresdef.h:
	shell32: Add trashing confirmations.

2006-07-31  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/Makefile.in, dlls/oleaut32/tests/varformat.c,
	  dlls/oleaut32/tests/vartest.c:
	oleaut32: Move varformat conformance tests to new file varformat.c

2006-07-29  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/input.c, dlls/user/tests/input.c:
	user: Set buffer to '\0' in GetKeyNameTextA too.

2006-07-29  Duane Clark <fpga@pacbell.net>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Fix _getw.

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Fix fread.

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Fix _read and fgetc.

	* dlls/msvcrt/tests/file.c:
	msvcrt: File read buffer tests.

2006-07-30  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/dinput_main.c:
	dinput: Initialize event sequence counter. And simplify code.

2006-07-29  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/security.c:
	advapi32: Add string sid tests.

	* dlls/advapi32/tests/security.c:
	advapi32: Print more info about failed test.

	* dlls/advapi32/advapi32_misc.h, dlls/advapi32/lsa.c,
	  dlls/advapi32/security.c:
	advapi32: Make ADVAPI_IsLocalComputer global and remove duplicate copy.
	Make debugstr_sid global.

2006-08-01  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/storage32.c:
	ole32: Add function parameters to FIXME messages.

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Add a test showing what STGM_TRANSACTED does for streams.

2006-07-30  H. Verbeet <hverbeet@gmail.com>

	* dlls/ddraw/direct3d.c:
	ddraw: Order Z-buffer formats by depth buffer bit depths in
	IDirect3DImpl_7_EnumZBufferFormats.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Split the GLSL check in a check for GLSL vertex shaders and one for
	GLSL fragment shaders.

	* dlls/wined3d/device.c:
	wined3d: Improve IWineD3DDeviceImpl_CreateTexture trace.

	* dlls/wined3d/surface.c:
	wined3d: Use GL_LIMITS(samplers) instead of GL_LIMITS(sampler_stages) in
	IWineD3DSurfaceImpl_UnlockRect.

2006-07-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/tests/comboex.c:
	comctl32/tests: Write-strings warnings fix.

	* dlls/advpack/tests/install.c:
	advpack/tests: Write-strings warnings fix.

	* dlls/cabinet/cabinet_main.c:
	cabinet: Write-strings warning fix.

2006-07-29  Jacek Caban <jacek@codeweavers.com>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: Change file path to URL in UrlCanonicalize.

	* dlls/urlmon/umon.c:
	urlmon: Use CoInternetParseUrl in URLMonikerImpl_Construct.

2006-07-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c:
	ntdll: Use the right section size when setting protections.
	Use the same size computation when setting section protections than
	when mapping it in the first place (reported by Nicholas Miell).

2006-07-29  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/stg_stream.c, dlls/ole32/storage32.c:
	ole32: Add some missing traces.

	* dlls/ole32/tests/storage32.c:
	ole32: Add a test for IEnumSTATSTG.

	* dlls/msi/files.c:
	msi: Change an ERR to a WARN.

2006-07-28  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/proxy.c:
	widl: Fix "static declaration follows non-static declaration" in generated code.

	* tools/widl/parser.y, tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: Encode coclass types in typelibs.

	* tools/widl/parser.y:
	widl: Register types for coclasses.

	* tools/widl/write_msft.c:
	widl: Check if a typeinfo is already in a typelib before adding it.

	* tools/widl/write_msft.c:
	widl: Set typelib_idx for coclasses when they're added to a typelib.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y,
	  tools/widl/typelib.c, tools/widl/typelib.h, tools/widl/widltypes.h,
	  tools/widl/write_msft.c:
	widl: Fold class_t into type_t.

2006-07-28  Thomas Kho <tkho@ucla.edu>

	* dlls/Maketest.rules.in:
	Maketest.rules.in: Fix comment.

2006-07-28  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/security.c:
	advapi32: Fix debugstr_sid to print unsigned SubAuthority.

	* dlls/advapi32/security.c:
	advapi32: Move SID members from WELLKNOWNSID to MAX_SID.

2006-07-28  Yuriy Kozlov <yuriy.kozlov@gmail.com>

	* programs/regedit/regproc.c:
	regedit: Allow entering - for a value in a .reg file to delete that value.

2006-07-28  James Hawkins <truiken@gmail.com>

	* dlls/wininet/urlcache.c:
	wininet: Only copy the relative filename into the UrlEntry structure.

2006-07-28  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advpack/tests/advpack.c:
	advpack/tests: Write-strings warnings fix.

	* dlls/msi/tests/db.c:
	msi/tests: Write-strings warnings fix.

2006-07-28  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/tests/cert.c, include/wincrypt.h:
	crypt32: Implement CryptHashPublicKeyInfo.

	* dlls/rsaenh/handle.c, dlls/rsaenh/handle.h:
	rsaenh: Use Interlocked functions for reference counting.

2006-07-28  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/device.c, include/dinput.h:
	dinput: Add DISCL_NOWINKEY define.

2006-07-28  Jason Green <jave27@gmail.com>

	* dlls/wined3d/baseshader.c:
	wined3d: Skip processing of D3DSIO_PHASE instruction.

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  include/d3d9types.h, include/wine/wined3d_types.h:
	wined3d: Declare a 1D sampler for TEXDP3TEX (GLSL).

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/surface.c,
	  dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h,
	  include/d3d9types.h, include/wine/wined3d_types.h:
	wined3d: Start checking for D3DUSAGE_QUERY_* items, improve traces.

2006-07-28  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Optimize d3dfmt_convert_surface.

	* configure, configure.ac, dlls/winex11.drv/Makefile.in,
	  dlls/winex11.drv/dga2.c, dlls/winex11.drv/dga2.h,
	  dlls/winex11.drv/event.c, dlls/winex11.drv/mouse.c,
	  dlls/winex11.drv/x11ddraw.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c, include/config.h.in:
	winex11.drv: Kill DGA support.

2006-07-27  Jacek Caban <jacek@codeweavers.com>

	* dlls/stdole2.tlb/std_ole_v2.idl, include/Makefile.in,
	  include/stdole2.idl:
	stdole2.tlb: Move stdole2.tlb generation to include to allow importlib from
	other IDLs.

2006-07-29  Alexandre Julliard <julliard@winehq.org>

	* Make.rules.in, dlls/stdole2.tlb/Makefile.in,
	  dlls/stdole32.tlb/Makefile.in:
	Make.rules: Replace RC_TLB by IDL_TLB_SRCS as tlb files can be used for other
	things than resources.

2006-07-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/message.c:
	user: Abort WaitForUserIdle if the target process died.

2006-07-28  Jason Green <jave27@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/directx.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: More shader fixes / new instructions.
	- Replace gl_FragColor with gl_FragData[0] for GLSL pixel shader output.
	- Subtract 1 more constant from total GLSL allowed float constants to
	accommodate the PROJECTION matrix row that we reference.

2006-07-28  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Render target texturing.

2006-07-28  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/msi/msi_main.c:
	msi: Native DllGetVersion does not fail if the supplied buffer is bigger
	than required.

	* dlls/msi/msipriv.h:
	msi: Make the version information of DllGetVersion same as in version resource.

2006-07-27  Juan Lang <juan_lang@yahoo.com>

	* dlls/rsaenh/rsaenh.c, dlls/rsaenh/tests/rsaenh.c:
	rsaenh: More tests and some fixes.
	- correct deleting the default container
	- imported keys should be stored in their container, not just given to the caller
	- tests for these changes

2006-07-27  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/varformat.c:
	oleaut32: VarMonthName - Update error codes and helper functions.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: VarSub: Conformance test.

	* dlls/oleaut32/variant.c:
	oleaut32: VarSub: Fixes several data types and corrects error codes.

2006-07-28  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/olepicture.c:
	oleaut32: Implement GetTypeInfoCount and GetTypeInfo for standard pictures.

	* dlls/oleaut32/olefont.c:
	oleaut32: Implement GetTypeInfoCount for standard fonts.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Implement setting of the hPal property in IPictureDisp::Invoke.
	Remove some validation code that is already handled by a more generic
	case at the end of the function.

	* dlls/oleaut32/olepicture.c, dlls/oleaut32/tests/olepicture.c:
	oleaut32: Implement getting of all properties in IPictureDisp::Invoke.

	* dlls/oleaut32/tests/olefont.c:
	oleaut32: Add a test for passing an invalid number of input parameters into
	IFontDisp::Invoke with DISPATCH_PROPERTYGET.

	* dlls/oleaut32/olepicture.c, dlls/oleaut32/tests/olepicture.c:
	oleaut32: Add validation for parameters in IPictureDisp::Invoke.
	Add some tests for IPictureDisp::Invoke.

	* dlls/oleaut32/olefont.c, dlls/oleaut32/tests/olefont.c:
	oleaut32: Fix the return code for an invalid dispid in IFontDisp::Invoke.

	* dlls/oleaut32/tests/olefont.c:
	oleaut32: Add a successful test for IFontDisp::Invoke.

	* dlls/oleaut32/olefont.c:
	oleaut32: Handle the Weight property in IFontDisp::Invoke.

2006-07-27  Juan Lang <juan_lang@yahoo.com>

	* dlls/secur32/Makefile.in, dlls/secur32/schannel.c,
	  dlls/secur32/tests/Makefile.in, dlls/secur32/tests/schannel.c:
	secur32: Improve schannel's AcquireCredentialsHandle, with tests.

	* include/sspi.h:
	sspi.h: Add missing define.

2006-07-27  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/db.c:
	msi: Add tests for MsiDatabaseImport.

2006-07-27  Jacek Caban <jacek@codeweavers.com>

	* include/mshtml.idl:
	mshtml.idl: Fix SAFEARRAY argument declaration.

	* tools/widl/write_msft.c:
	widl: Reorder segments to match midl.

	* tools/widl/write_msft.c:
	widl: Use cval in ATTR_ID.

	* tools/widl/write_msft.c:
	widl: Added ATTR_BINDABLE handling to add_func_desc.

	* tools/widl/write_msft.c:
	widl: Store typekind in msft_typeinfo_t to fix ATTR_DUAL handling.

	* dlls/shdocvw/oleobject.c, dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added test of GetControlInfo.

2006-07-27  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/d3d9/vertexdeclaration.c, dlls/gdi/tests/font.c:
	Fix 2 "static is not at beginning of declaration" warnings.

	* dlls/msi/tests/package.c:
	msi: 0xdeadbeef is too big for a signed int thus producing sign
	comparison warnings when compared to an int variable. Use 0xdeadbee
	instead.

2006-07-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mapi32/tests/prop.c:
	mapi32/tests: Write-strings warning fix.

	* dlls/msi/tests/install.c:
	msi/tests: Write-strings warning fix.

	* dlls/crypt32/tests/encode.c:
	crypt32/tests: Write-strings warnings fix.

2006-07-27  Stefan Siebert <stefan.siebert@web.de>

	* programs/winebrowser/main.c:
	winebrowser: Pass any given argument that is not a mailto URL to the browser.

2006-07-27  Mike McCormack <mike@codeweavers.com>

	* programs/msiexec/msiexec.c:
	msiexec: Don't crash if there's no args.

	* dlls/msi/action.c:
	msi: Don't set the shortcut's working directory if it's NULL.

	* dlls/msi/msi.c, dlls/msi/registry.c:
	msi: Fix some memory leaks.

2006-07-27  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/keyboard.c:
	dinput: Keyboard: Use the same event queue mechanism as mouse.

2006-07-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Do not use the IWineD3DSurface for the cursor.

2006-07-27  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c:
	wined3d: Avoid a false ERR.

2006-07-27  Alexandre Julliard <julliard@winehq.org>

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

----------------------------------------------------------------
2006-07-27  Jason Green <jave27@gmail.com>

	* dlls/wined3d/vertexshader.c:
	wined3d: Fix minor typo from shader patch.

2006-07-27  Huw Davies <huw@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Add lnkfile description.

2006-07-27  Alexandre Julliard <julliard@winehq.org>

	* server/fd.c:
	server: Round up the timeout for poll() to avoid redundant calls.

	* server/request.c:
	server: Don't crash on invalid request sizes.

2006-07-26  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/winhelp/winhelp.c:
	winhelp: Write-strings warning fix.

	* dlls/user/tests/menu.c:
	user/tests: Write-strings warnings fix.

2006-07-26  James Hawkins <truiken@gmail.com>

	* dlls/msi/Makefile.in, dlls/msi/package.c:
	msi: Download the MSI package if it is a remote URL.

2006-07-26  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/str.c, dlls/crypt32/tests/str.c:
	crypt32: Implement CryptStrToNameA/W, with tests.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Implement X509_UNICODE_NAME encoding/decoding.

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Public keys should be exported with the CALG_RSA_KEYX alg_id.

2006-07-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/oleaut32/olefont.c:
	oleaut32: Fixed compiler warning.

2006-07-26  Jason Green <jave27@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/directx.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/vertexshader.c:
	wined3d: Fix some upside-down rendering issues for shaders.

2006-07-26  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: BltFast/BltOverride color keying.

2006-07-26  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/regedit/listview.c:
	regedit: Write-strings warning fix.

2006-07-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c:
	wined3d: Blacklist WINED3DFMT_R8G8B8.

2006-07-27  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/wineconsole/wineconsole_Ko.rc:
	wineconsole: Updated Korean resource.

2006-07-27  Mike McCormack <mike@codeweavers.com>

	* include/commctrl.h:
	comctl32: Fix a typo.

	* dlls/msi/table.c, dlls/msi/tests/db.c, dlls/msi/where.c:
	msi: Fix the value of LONG integers in records (suggested by James Hawkins).

	* dlls/msi/tests/format.c:
	msi: Remember to free a handle.

	* dlls/msi/cond.y:
	msi: Fix some memory leaks in the condition parser.

	* dlls/msi/appsearch.c, dlls/msi/msi.c:
	msi: Use msi_alloc/free, not HeapAlloc/Free.

2006-07-26  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/install.c:
	msi: Test the column types of MSI packages.

	* dlls/msi/tests/package.c:
	msi: Test the states of a component with a compressed file.

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

2006-07-26  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/dinput8/dinput8_main.c:
	dinput8: Better DirectInput8Create warning.

2006-07-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: Change '/'->'\' only for file protocol in UrlCanonicalize.

	* dlls/mshtml/protocol.c:
	mshtml: Fix handling res URLs with full path and number resource ID.

2006-07-26  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/olefont.c, dlls/oleaut32/tests/olefont.c:
	oleaut32: Add validation of some more parameters in IFontDisp::Invoke.

	* dlls/oleaut32/olefont.c, dlls/oleaut32/tests/olefont.c:
	oleaut32: Clean up IFontDisp::Invoke by using VariantChangeTypeEx to coerce
	the input parameter into the correct type.

	* dlls/ole32/regsvr.c:
	ole32: Add more self-registration entries for classes and interfaces.

2006-07-26  Huw Davies <huw@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Add inifile entries.

2006-07-24  Thomas Kho <tkho@ucla.edu>

	* programs/wcmd/wcmd.h, programs/wcmd/wcmdmain.c:
	wcmd: Correct handling of quotes and /s flag when a command argument is present.

2006-07-23  Kovács András <andras@csevego.net>

	* dlls/wined3d/device.c:
	wined3d: Fix CopyRects if pDestPointsArray is NULL.

2006-07-25  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/tests/monitor.c, dlls/winex11.drv/settings.c:
	x11drv: Number of fixes for ChangeDisplaySettingsEx with tests.

2006-07-26  Ge van Geldorp <ge@gse.nl>

	* programs/winedbg/be_alpha.c, programs/winedbg/be_cpu.h,
	  programs/winedbg/be_i386.c, programs/winedbg/be_ppc.c,
	  programs/winedbg/be_x86_64.c, programs/winedbg/break.c,
	  programs/winedbg/db_disasm.c, programs/winedbg/debugger.h,
	  programs/winedbg/memory.c, programs/winedbg/source.c,
	  programs/winedbg/stack.c, programs/winedbg/symbol.c,
	  programs/winedbg/tgt_active.c, programs/winedbg/tgt_minidump.c,
	  programs/winedbg/types.c:
	winedbg: Change ADDRESS variables to ADDRESS64 so we can handle 64-bit addresses.

2006-07-25  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: More efficient color keying dirtifying.
	Instead of blindly dirtifying the surface LoadTexture keeps track of
	the color key that was used when creating the opengl texture and
	reloads the surface if the color key has changed.

2006-07-25  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw.c, dlls/ddraw/surface.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	ddraw: Support using an application-provided surface pointer.

2006-07-26  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/record.c, dlls/msi/tests/record.c:
	msi: Fix an off by one error in MsiRecordGetString.

	* dlls/msi/Makefile.in, dlls/msi/join.c, dlls/msi/query.h, dlls/msi/sql.y:
	msi: Implement SQL inner joins.

2006-07-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/crypt32/tests/store.c:
	crypt32/tests: Clean up temp files.

	* dlls/ntdll/nt.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/server.c,
	  dlls/ntdll/time.c, include/wine/server_protocol.h, server/object.h,
	  server/protocol.def, server/request.c, server/thread.c,
	  server/trace.c:
	server: Convert the server start time to the abs_time_t type.

	* dlls/ntdll/thread.c, include/wine/server_protocol.h, server/process.c,
	  server/protocol.def, server/thread.c, server/thread.h,
	  server/trace.c:
	server: Convert thread creation/exit times to the abs_time_t type.

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/process.c, dlls/ntdll/sync.c,
	  dlls/ntdll/time.c:
	ntdll: Renamed the NTDLL_get/from_server_timeout functions since they don't
	deal only with timeouts.

	* dlls/user/message.c, include/wine/server_protocol.h, server/process.c,
	  server/protocol.def, server/request.h, server/trace.c:
	server: Rename the wait_input_idle request to better reflect what it does.
	Also get rid of the unused timeout field.

	* server/fd.c, server/file.h, server/mailslot.c, server/named_pipe.c,
	  server/serial.c:
	server: Make the create_async function take an absolute timeout.

2006-07-25  Michael Stefaniuc <mstefani@redhat.de>

	* server/console.c, server/ptrace.c, server/queue.c, server/registry.c,
	  server/token.c:
	server: Fix some comparisons between signed and unsigned.

2006-07-26  Alexandre Julliard <julliard@winehq.org>

	* include/wine/server.h, include/wine/server_protocol.h, server/atom.c,
	  server/console.c, server/debugger.c, server/file.c, server/hook.c,
	  server/object.c, server/object.h, server/process.c, server/process.h,
	  server/protocol.def, server/ptrace.c, server/queue.c,
	  server/region.c, server/registry.c, server/request.c,
	  server/request.h, server/snapshot.c, server/symlink.c,
	  server/token.c, server/trace.c, server/user.h, server/window.c,
	  server/winstation.c, tools/make_requests:
	server: Added data_size_t type to represent sizes in the server protocol.
	Make it an unsigned int to save some space on Win64, if we need to
	transfer more than 4Gb over the server pipe something is seriously
	wrong.

2006-07-25  Karsten Elfenbein <kelfe@gmx.de>

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Fix the case when CPGetHashParam should return the size of the HASHVAL.

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Fix the case when the CPEncrypt function is asked for the needed
	buffer size.

2006-07-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: Write-strings warnings fix.

	* dlls/msi/tests/db.c:
	msi/tests: Write-strings warnings fix.

2006-07-26  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

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

2006-07-25  Samuel Lidén Borell <samuellb@bredband.net>

	* dlls/dmime/performance.c:
	dmime: Accept IDirectMusicPerformance2 in QueryInterface.

2006-07-25  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/serialize.c,
	  dlls/crypt32/store.c, dlls/crypt32/tests/store.c, include/wincrypt.h:
	crypt32: Implement file stores.

2006-07-25  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/directx.c:
	wined3d: Enable all bump mapping formats.

2006-07-26  Jason Green <jave27@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Fix crash caused by bad TRACE.

2006-07-25  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Remove superfluous breaks.

2006-07-25  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.y:
	widl: Allow trailing commas in attribute lists.

2006-07-26  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/sql.y:
	msi: Add a FIXME for join queries.

2006-07-25  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/tests/install.c, dlls/msi/tests/package.c:
	msi: Always load all the components.

2006-07-25  Robert Shearman <rob@codeweavers.com>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/symbol.c:
	dbghelp: Implement SymGetSymFromAddr64.

	* configure, configure.ac, dlls/oleaut32/olepicture.c,
	  include/config.h.in:
	configure: Add a check for the DGifOpen function in the gif_lib.h header as
	the v4 of the file does define it, while v3 doesn't.

2006-07-24  Stefan Siebert <stefan.siebert@web.de>

	* dlls/comdlg32/filedlg.c:
	comdlg32: GetOpenFileNameW - Create unicode windows.

2006-07-25  Alexandre Julliard <julliard@winehq.org>

	* programs/uninstaller/main.c:
	uninstaller: Fail more gracefully when the registry key is missing.

2006-07-23  Neil Skrypuch <ns03ja@brocku.ca>

	* dlls/oleaut32/safearray.c:
	oleaut32: Adding a NULL to a safearray is supposed to crash.

2006-07-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/server.c:
	ntdll: Avoid accessing the TEB after the memory view has been released.
	When using reserved areas the memory could potentially be reused right
	after the release.

	* server/ptrace.c:
	server: Try harder to find a suitable thread for read/write_process_memory.

2006-07-20  Thomas Kho <tkho@ucla.edu>

	* server/process.c:
	server: Add new threads to end of thread_list.

2006-07-14  Phil Lodwick <Phil.Lodwick@EFI.COM>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Support for SMVARRAY in EmbeddedComplexSize.

2006-07-24  Jason Green <jave27@gmail.com>

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement more GLSL instructions.
	Implement D3DSIO_TEXREG2AR, TEXREG2GB, TEXREG2RGB, TEXM3X3TEX, TEXM3X3SPEC.

2006-07-25  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/query.h, dlls/msi/tests/db.c, dlls/msi/where.c:
	msi: Fix where queries on 32bit integer columns.

2006-07-24  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/db.c:
	msi: Add tests for the WHERE SQL clause.

2006-07-25  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/wineps.drv/wps_Ko.rc:
	wineps.drv: Updated Korean resource.

2006-07-25  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/query.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
	wined3d: Add real occlusion query support.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Add traces to IWineD3DVertexShaderImpl_SetFunction &
	IWineD3DPixelShaderImpl_SetFunction.

	* dlls/wined3d/drawprim.c, dlls/wined3d/vertexbuffer.c:
	wined3d: D3d8 shaders can have a NULL pFunction, but a valid vertex declaration.

2006-07-24  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.l, tools/widl/parser.y:
	widl: Support SAFEARRAY(type) syntax.

	* tools/widl/header.c:
	widl: Fix redefinition of types in output.

2006-07-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/tests/webbrowser.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Added more test and fixes.

2006-07-24  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi32: Use the correct name when writing the fixed font registry value.

2006-07-25  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/input.c, dlls/user/tests/msg.c:
	user: Add more TrackMouseEvent tests, particularly a test with
	injected mouse move events. Fix a problem detected by the test.

2006-07-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/input.c:
	user: Various TrackMouseEvent fixes.
	- Use WINPOS_WindowFromPoint instead of WindowFromPoint in order to
	use hittest directly to simplify the code.
	- WM_NCMOUSEHOVER and WM_MOUSEHOVER take different parameters.

	* dlls/user/winpos.c:
	user: Add a trace to EndDeferWindowPos.

	* dlls/user/input.c:
	user: Use (win) debug channel by default, add a TRACE to SendInput.

2006-07-24  Christian Gmeiner <christian.gmeiner@students.fhv.at>

	* dlls/setupapi/devinst.c, dlls/setupapi/stubs.c:
	setupapi: Move SetupDiGetClassDevsExW into devinst.c.

2006-07-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/registry.c:
	msi: Use CLSIDFromString to make squash_guid a bit more robust.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Make MsiConfigureFeature a bit more robust.

	* dlls/msi/Makefile.in, dlls/msi/msi.c, dlls/msi/msi_main.c,
	  dlls/msi/msipriv.h:
	msi: Move COM server implementation to a separate file.

	* configure, configure.ac:
	configure: Check for freetype-config first, then use the libraries it specifies.

2006-07-23  Jason Green <jave27@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_types.h:
	wined3d: Improve traces for D3DTRANSFORMSTATETYPE.
	Added debug function for WINED3DTRANSFORMSTATETYPE and changed all
	references from D3DTS_* to WINED3DTS_*.

2006-07-24  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, loader/main.c, loader/preloader.c:
	preloader: Allocate more space in low memory as well as for top-down allocations.

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/thread.c, dlls/ntdll/virtual.c:
	ntdll: Allocate the PEB with NtAllocateVirtualMemory too.

	* dlls/ntdll/virtual.c:
	ntdll: Support memory allocations inside reserved areas.

	* dlls/ntdll/virtual.c:
	ntdll: Propagate the MEM_TOP_DOWN flag into the map_view() function.

	* include/wine/library.h, libs/wine/mmap.c, libs/wine/wine.def,
	  libs/wine/wine.map:
	libwine: Added a function to enumerate the reserved mmap areas.

2006-07-24  Robert Shearman <rob@codeweavers.com>

	* dlls/msi/msi.c:
	msi: The szLogFile parameter of MsiEnableLogW is optional, so handle the case
	of it being NULL.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Set BufferMark before calling EmbeddedPointerMarshall,
	EmbeddedPointerUnmarshall or EmbeddedPointerMemorySize.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Improve the stubs for RpcImpersonateClient and RpcRevertToSelf.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Support small fixed arrays in EmbeddedComplexSize.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Allocate memory based on MaxCount, not ActualCount in
	NdrConformantStringUnmarshall.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Add support for marshaling the FC_HYPER base type in complex types.
	Change the FIXME messages to print out unrecognised format characters in
	hex rather than decimal.

	* dlls/uuid/uuid.c:
	uuid: Add IIDs and CLSIDs from xmldso.h.

	* dlls/oleaut32/typelib.c:
	oleaut32: Initialize pRetVal in ITypeInfo::Invoke before calling VariantCopyInd
	as native doesn't assume that it doesn't contain valid data.

	* dlls/msxml3/Makefile.in, dlls/msxml3/main.c, dlls/msxml3/regsvr.c:
	msxml3: Use general DLL registration framework to register CLSIDs and ProgID's.

2006-07-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/msi.c:
	msi: Add a test case for MsiGetFileHash.

	* dlls/msi/msi.c:
	msi: Implement MsiGetFileHash.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Avoid an uninitialized variable warning.

2006-07-24  Alexandre Julliard <julliard@winehq.org>

	* programs/winevdm/winevdm.c:
	winevdm: Load sound.drv too.

2006-07-21  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/header.c:
	widl: Allow write_type to output full pointer types.

2006-07-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/surface.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Draw the cursor.

2006-07-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Use the ddraw blitting code for IWineD3DDevice::ColorFill.

2006-07-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	msi: Reimplement MsiGetUserInfo using awstrings.

2006-07-23  Dan Kegel <dank@kegel.com>

	* dlls/winedos/int21.c:
	winedos: Limit reported disk space to 1GB.

2006-07-23  Jason Green <jave27@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/wined3d_private.h:
	wined3d: Replace memset/memcpy routines on stateblock (fixes dynamic shader
	constants regression).

2006-07-23  Detlef Riekenberg <wine.dev@web.de>

	* dlls/comdlg32/tests/printdlg.c:
	comdlg32/tests: PrintDlg with PD_RETURNDEFAULT can fail.

2006-07-22  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/device_private.h:
	dinput: Simplify code a bit.

2006-07-23  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/dinput_main.c:
	dinput: Fix small typo.

2006-07-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c, dlls/wined3d/utils.c:
	wined3d: Whitelist pixelformats instead of blacklisting.

	* dlls/wined3d/surface.c:
	wined3d: Reactivate the X bits fixup.

2006-07-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c, dlls/msi/registry.c:
	msi: MoveMsiEnumPatches to registry.c

	* dlls/shdocvw/regsvr.c:
	shdocvw: Register MruListLong.

	* dlls/hlink/hlink_main.c:
	hlink: Implement HlinkNavigateToStringReference.

	* dlls/hlink/link.c:
	hlink: Only release an object that we successfully created.

	* dlls/query/query.spec, dlls/query/query_main.c:
	query: Add a stub implementation for LocateCatalogs.

2006-07-24  Hwang YunSong(황윤성 <hys545@dreamwiz.com>

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

2006-07-23  Robert Reif <reif@earthlink.net>

	* include/winnt.h:
	winnt.h: Add more SID defines.

2006-07-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/session.c:
	urlmon: Don't use freed string in TRACE.

	* dlls/shdocvw/persist.c:
	shdocvw: Return S_OK in IPersistStreamInit::Load.

2006-07-22  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shell32/shres.rc, dlls/shell32/shresdef.h:
	shell32: Define one more avi resource.

2006-07-21  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/package.c:
	msi: Add tests for component and feature states.

2006-07-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Write-strings warnings fix.

2006-07-21  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c,
	  include/richedit.h:
	riched20: Write-strings warnings fix.
	The string members of the FINDTEXT and FINDTEXTEX structs are declared
	constant in the SDK.

2006-07-21  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/typelib.c:
	oleview: Added interface handling to idl display.

2006-07-21  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Expand features with odd Display values.

	* dlls/msi/dialog.c:
	msi: Don't display a feature if its Display value is zero.

	* dlls/msi/action.c:
	msi: Set the component's initial state based on its attributes.

2006-07-21  Jason Green <jave27@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Minor trace corrections in Set___ShaderConstants().

2006-07-21  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: Do not try to create a vbo more than once.

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Move vertex fixups into their own function.

2006-07-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/thread.c, dlls/ntdll/virtual.c:
	ntdll: Use NtAllocateVirtualMemory to allocate all TEBs except the first one.

2006-07-20  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Fix missing tests and heap errors for VarCat conformance.

	* dlls/oleaut32/variant.c:
	oleaut32: Fix temp variant initialization issues in VarCat.

2006-07-20  Stefan Siebert <stefan.siebert@web.de>

	* dlls/kernel/time.c, dlls/ntdll/process.c,
	  include/wine/server_protocol.h, server/process.c,
	  server/protocol.def, server/trace.c:
	ntdll: Implementation of process CreationTime and ExitTime.

2006-07-20  Christian Gmeiner <christian.gmeiner@students.fhv.at>

	* dlls/setupapi/devinst.c, dlls/setupapi/setupapi.spec,
	  include/setupapi.h:
	setupapi: Implemented SetupDiCreateDeviceInfoA.

	* dlls/setupapi/tests/devinst.c:
	setupapi: Rename a test.

2006-07-20  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: Partial LookupAccountSid implementation.

2006-07-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/heap.c:
	ntdll: Simplify the sanity checks in RtlFreeHeap and RtlReAllocateHeap.

	* dlls/ntdll/heap.c:
	ntdll: Set a proper HEAP_MIN_DATA_SIZE on 64-bit platforms.

	* dlls/ntdll/heap.c:
	ntdll: Add a few more free list entries to the heap.

2006-07-21  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/comdlg32/cdlg_Ko.rc:
	comdlg32: Updated Korean resource.

2006-07-21  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	msi: Handle W/A conversions more correctly in MsiProvideQualifiedComponentEx.

	* dlls/msi/msi.c:
	msi: Use msi_reg_get_val_str() to read a registry value.

	* dlls/msi/msi.c, dlls/msi/msi.spec:
	msi: Add a stub implementation for MsiProvideQualifiedComponentExA.

	* dlls/msi/msi.c:
	msi: Components with INSTALLSTATE_NOTUSED are considered present.

	* dlls/msi/msi.c:
	msi: A component with an empty path is not used.

	* dlls/msi/msi.c:
	msi: Use TRACE not FIXME for already implemented functions.

2006-07-20  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/d3d9/tests/shader.c, dlls/d3d9/tests/stateblock.c:
	d3d9: State management test framework for d3d9.

	* dlls/wined3d/device.c:
	wined3d: Respect EnableAutoDepthStencil parameter.

	* dlls/wined3d/stateblock.c:
	wined3d: Correct initial render states.

	* dlls/wined3d/device.c:
	wined3d: Do not return WINED3DERR_INVALIDCALL for Phong shading.

	* dlls/wined3d/device.c:
	wined3d: Restore recording mode later in ActiveRender().

	* dlls/wined3d/device.c:
	wined3d: Read shader constants from correct stateblock.

2006-07-20  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mscms/tests/profile.c:
	mscms/tests: Write-strings warnings fix.

2006-07-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/input.c, dlls/user/tests/msg.c:
	user: Add a TrackMouseEvent test, make it pass under Wine.

2006-07-20  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Add functionality for ScriptXtoCP and ScriptCPtoX calls.

2006-07-20  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h,
	  dlls/ole32/ole32.spec, dlls/ole32/tests/compobj.c:
	ole32: Implement CoRegisterPSClsid.

2006-07-20  Juan Lang <juan_lang@yahoo.com>

	* dlls/msi/appsearch.c:
	msi: Don't use fixed-size buffers in AppSearch action.

2006-07-20  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/dinput8/Makefile.in, dlls/dinput8/dinput8_main.c, tools/wine.inf:
	dinput8: DirectInput8Create rewrite.

2006-07-19  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/olefont.c:
	oleaut32: OLEFontImpl_GetIDsOfNames conformance test.

	* dlls/oleaut32/olefont.c:
	oleaut32: Implements OLEFontImpl_GetIDsOfNames.

2006-07-19  Bang Jun-Young <bang.junyoung@gmail.com>

	* dlls/comdlg32/filedlg31.c:
	comdlg32: Remove redundant headers.

2006-07-19  Ge van Geldorp <ge@gse.nl>

	* dlls/gdi/freetype.c:
	gdi: Use variables of correct size.

2006-07-19  Christian Gmeiner <christian.gmeiner@students.fhv.at>

	* dlls/setupapi/devinst.c, dlls/setupapi/setupapi.spec:
	setupapi: Add stub for SetupDiCreateDeviceInfoW.

	* dlls/setupapi/devinst.c:
	setupapi: Remove unneeded NULL checks before MyFree().

2006-07-19  James Hawkins <truiken@gmail.com>

	* dlls/msi/events.c:
	msi: Implement the SetInstallLevel event.

	* dlls/msi/install.c, dlls/msi/msipriv.h:
	msi: Forward MsiSetInstallLevel to an internal MSI_SetInstallLevel that can
	be used internally.

	* dlls/msi/action.c, dlls/msi/install.c, dlls/msi/msipriv.h:
	msi: Update feature states after changing install levels, as they may have
	changed.

	* dlls/msi/action.c:
	msi: Rename SetFeatureStates to match the naming scheme of internal msi
	functions.

2006-07-20  Mike McCormack <mike@codeweavers.com>

	* include/amstream.idl, include/ddstream.idl, include/dispex.idl,
	  include/downloadmgr.idl, include/dyngraph.idl, include/mlang.idl,
	  include/mmstream.idl, include/mshtmhst.idl, include/mshtml.idl,
	  include/msxml.idl, include/msxml2.idl, include/objidl.idl,
	  include/tom.idl, include/urlmon.idl, include/xmldom.idl,
	  include/xmldso.idl:
	include: Remove unnecessary semicolons from idl.

	* include/.gitignore, include/Makefile.in, include/dbinit.idl,
	  include/dbprop.idl, include/dbs.idl, include/oledb.idl:
	oledb: Add oledb.idl and some idl files it depends on.

2006-07-19  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac:
	configure: Use -fno-builtin to avoid warnings with gcc 4.1.1.

2006-07-20  Mike McCormack <mike@codeweavers.com>

	* include/control.idl, include/hlink.idl, include/indexsvr.idl,
	  include/mshtmhst.idl, include/objsafe.idl, include/propidl.idl,
	  include/pstore.idl, include/richole.idl, include/shobjidl.idl,
	  include/wine/itss.idl:
	include: Semicolons after cpp_quote are a syntax error in midl.

2006-07-19  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Implement and test ScriptCacheGetHeight.

2006-07-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/internet.c:
	urlmon: Added PARSE_CANONICALIZE implementation in CoInternetParseUrl.

	* dlls/mshtml/conpoint.c, dlls/mshtml/hlink.c, dlls/mshtml/install.c,
	  dlls/mshtml/loadopts.c, dlls/mshtml/navigate.c,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsio.c, dlls/mshtml/persist.c,
	  dlls/mshtml/selection.c, dlls/mshtml/txtrange.c, dlls/mshtml/view.c:
	mshtml: Wrap remaining Heap* functions by inline functions.

2006-07-19  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wininet/ftp.c:
	wininet: FTP_FtpDeleteFileW expects a LPWININETFTPSESSIONW.

2006-07-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dnsapi/tests/name.c:
	dnsapi/tests: Write-strings warnings fix.

	* dlls/comctl32/tests/listview.c:
	comctl32/tests: Write-strings warnings fix.

2006-07-19  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
	wined3d: Compilation fixes.

2006-07-20  Kovács András <andras@csevego.net>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: joydev_enum_deviceA now returns the correct value.

2006-07-20  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/comctl32/comctl_Ko.rc:
	comctl32: Updated Korean resource.

2006-07-19  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Implement more string types for X509_NAME_VALUE.

	* dlls/crypt32/str.c, dlls/crypt32/tests/str.c:
	crypt32: Correct handling of empty output buffer in CertRDNValueToStr and
	CertNameToStr.

	* dlls/msi/appsearch.c:
	msi: Implement ACTION_AppSearchIni.

2006-07-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c:
	ntdll: Null-terminate strings returned by VFAT_IOCTL_READDIR_BOTH to work
	around a kernel bug.

2006-07-19  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wininet/ftp.c:
	wininet: FTP_FtpRenameFileW expects a LPWININETFTPSESSIONW.

2006-07-19  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/decode.c,
	  dlls/crypt32/encode.c, dlls/crypt32/tests/encode.c:
	crypt32: Implement X509_UNICODE_NAME_VALUE encoding/decoding.

	* dlls/msi/appsearch.c:
	msi: Implement searching parent in ACTION_AppSearchReg.

2006-07-19  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	msi: Implement MsiConfigureFeatureW.

	* dlls/msi/msi.c:
	msi: Fix the size of base 85 GUIDs.

	* dlls/msi/action.c:
	msi: Only load the features and files tables once.

2006-07-18  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/typelib.c:
	oleview: Added data freeing in TypeLib Viewer.

	* programs/oleview/main.h, programs/oleview/typelib.c:
	oleview: Added some features to IDL data displaying.

	* programs/oleview/main.h, programs/oleview/pane.c,
	  programs/oleview/typelib.c:
	oleview: Added skeleton for IDL files generation.

2006-07-18  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Add ScriptStringCPtoX and ScriptStringXtoCP stubs.

2006-07-19  Alexandre Julliard <julliard@winehq.org>

	* loader/preloader.c:
	preloader: Make sure the WINEPRELOADRESERVE area doesn't overlap the low
	memory area.

	* dlls/kernel/process.c:
	kernel: Simplify set_process_name now that it doesn't have to handle winevdm.

	* dlls/kernel/process.c, dlls/ntdll/virtual.c:
	kernel: Added support for exec'ing a new Win32 process.
	Use it to restart execution if the main binary can't be loaded because
	of address space conflicts, and also for Win16/DOS support.

	* dlls/kernel/process.c, dlls/ntdll/server.c,
	  include/wine/server_protocol.h, server/process.c, server/process.h,
	  server/protocol.def, server/request.c, server/trace.c:
	server: Simplify process creation.
	Pass the socket for the new process from the parent through the
	environment.
	Perform initialisations during the new_process request.

2006-07-19  Jason Green <jave27@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/vertexdeclaration.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
	wined3d: Make the number of floating point shader constants dynamic.

2006-07-17  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/crypt32/tests/crl.c:
	crypt32: Make tests loadable on NT4.

2006-07-18  James Hawkins <truiken@gmail.com>

	* dlls/msi/msi.spec, dlls/msi/source.c:
	msi: Add a stub implementation of MsiSourceListClearAll.

	* dlls/msi/action.c, dlls/msi/dialog.c:
	msi: Sort SelectionTree items by their Display value.

2006-07-18  Huw Davies <huw@codeweavers.com>

	* dlls/msi/files.c:
	msi: Create files with the correct file attributes.

2006-07-18  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	msi: Check the right pointers for NULL.

	* dlls/msi/msi.c:
	msi: Set properties, not the command line in MsiReinstallFeatureW.

	* dlls/msi/install.c, dlls/msi/msi.spec:
	msi: Implement MsiSetInstallLevel.

2006-07-19  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/mshtml/Ko.rc:
	mshtml: Updated Korean resource.

2006-07-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/secur32/ntlm.c:
	secur32: Write-strings warnings fix.

2006-07-18  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/crypt32/tests/main.c:
	crypt32/tests: Write-strings warnings fix.

2006-07-18  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/vartest.c, dlls/oleaut32/variant.c:
	oleaut32: Update error codes for VarMod.

2006-07-18  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: removeChild should catch a NULL child node.

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Add a test to check that selectSingleNode returns a NULL-ptr when it
	doesn't find a match.

2006-07-18  Juan Lang <juan_lang@yahoo.com>

	* dlls/msi/appsearch.c:
	msi: Set name in ACTION_AppSearchGetSignature.

	* dlls/crypt32/encode.c:
	crypt32: Don't return from a try block.

2006-07-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/main.c, dlls/mshtml/mshtml.spec:
	mshtml: Added stub implementation of ShowHTMLDialog.

2006-07-17  Dan Hipschman <dsh@linux.ucla.edu>

	* libs/wpp/ppl.l:
	wpp: In recursive macro definitions, print the macro name instead of nothing.

2006-07-18  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/device.c, dlls/ddraw/direct3d.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	ddraw/wined3d: Remove texture format enumeration functions.

2006-07-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/swapchain.c:
	wined3d: Duplicate flips in software if the local copy is up to date.

2006-07-17  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c:
	wined3d: Disable the fog before writing the back buffer data.

2006-07-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, dlls/wined3d/wined3d_main.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add a setting for the render target locking method.

	* dlls/wined3d/surface.c:
	wined3d: Break the glDrawPixels call out of UnlockRect.

2006-07-18  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

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

2006-07-17  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/str.c, dlls/crypt32/tests/str.c:
	crypt32: Output x.500 strings from CertNameToStrA/W.

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/serialize.c:
	crypt32: Fix reading key prov info from serialized data.

	* dlls/crypt32/encode.c:
	crypt32: Always set required encoded length in CryptEncodeObject(Ex).

	* dlls/msi/appsearch.c:
	msi: Fix silly pointer error.

2006-07-17  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Update the feature components' states when a feature is selected.

2006-07-17  Duane Clark <fpga@pacbell.net>

	* dlls/msvcrt/tests/file.c:
	msvcrt: Add tests of file operations in ASCII mode.

2006-07-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/sec_mgr.c:
	urlmon: Fix handle leak.

	* dlls/mshtml/htmlbody.c, dlls/mshtml/htmldoc.c, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmlinput.c, dlls/mshtml/htmlnode.c,
	  dlls/mshtml/htmlselect.c, dlls/mshtml/htmltextarea.c:
	mshtml: Wrap more Heap* function by inline functions.

2006-07-17  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Add an exception handler around code executed on the server side
	from the typelib marshaler.

	* dlls/msi/msi.c:
	msi: Fix conversion of path to include nul-termination character in
	MsiProvideQualifiedComponentA.

	* dlls/rpcrt4/cproxy.c:
	rpcrt4: Display a big message box if the user tries to use typelib
	marshaling in native oleaut32 with builtin rpcrt4 to tell them what is
	wrong.

	* dlls/rpcrt4/ndr_marshall.c, include/wine/rpcfc.h:
	rpcrt4: Handle more structure padding values.

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: Revert check for FUNCFLAG_FRESTRICTED in ITypeInfo::Invoke.
	The change caused regressions in a number of applications and needs more
	study to see what the correct behaviour should be.

2006-07-17  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/surface.c,
	  dlls/wined3d/vertexshader.c:
	wined3d: Readd missing copyright to shaders files.

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Fix typo in ARB pixel shader.

2006-07-17  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/variant.c:
	oleaut32: VarCmp - Corrected function description.

2006-07-16  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Increment texture_idx when continuing as well.

2006-07-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advapi32/tests/crypt_lmhash.c:
	advapi32/tests: Write-strings warnings fix.

2006-07-17  Huw Davies <huw@codeweavers.com>

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	comctl32: All items should be marked as unchecked when LVS_EX_CHECKBOXES is
	initially set.
	When a new item is added with LBS_EX_CHECKBOXES already set then that item is
	marked as unchecked.

2006-07-18  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Store the full path to the prelink tool.

2006-07-17  Jason Green <jave27@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Fix for vertex shaders.

2006-07-16  Duane Clark <fpga@pacbell.net>

	* programs/notepad/main.c:
	notepad: Change notepad printing font.

	* programs/notepad/dialog.c:
	notepad: Make notepad print something reasonable.

2006-07-16  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/main.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/protocol.c:
	mshtml: Wrap Heap* functions by inline functions.

2006-07-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Break out the frame buffer readback of LockRect, implement palettized
	readback.

2006-07-17  Robert Shearman <rob@codeweavers.com>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Don't access a negative section index in elf_map_section.

	* dlls/dbghelp/stabs.c:
	dbghelp: Avoid accessing a negative string index when parsing stabs entries
	with an empty string.

	* dlls/kernel/tests/version.c, dlls/ntdll/version.c:
	ntdll: Fix a return code from RtlVerifyVersionInfo and change the FIXME to a
	TRACE now that all of the tests pass.

	* dlls/kernel/tests/version.c:
	kernel: Fix an incorrect version test.

	* dlls/kernel/tests/version.c, dlls/ntdll/version.c:
	ntdll: Fix RtlVerifyVersionInfo handling of major, minor and service pack
	versions, which are tested in a hierarchical manner.
	Add some new tests for the different condition values.

	* dlls/kernel/tests/version.c, dlls/ntdll/version.c:
	ntdll: Use a common condition value for the major, minor and service pack
	version numbers.

	* dlls/ntdll/version.c:
	ntdll: Reduce duplicated code in RtlVerifyVersionInfo by calling a function
	for comparing the values.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Test the return value of VarCat in the tests.

2006-07-15  Aric Stewart <aric@codeweavers.com>

	* programs/wineboot/Makefile.in, programs/wineboot/wineboot.c:
	wineboot: Copy windows file protection files at boot time.

2006-07-17  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	msi: Tidy up MsiCreateAndVerifyInstallerDirectory a bit.

	* dlls/msi/msi.c:
	msi: Implement MsiConfigureFeatureA using MsiConfigureFeatureW.

2006-07-15  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/install.c:
	msi: Cleanup traces, remove unnecessary includes.

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/helpers.c:
	msi: Move msi_get_property_int() to helpers.c

	* dlls/msi/msi.c:
	msi: Add support for INSTALLSTATE_ADVERTISED to MsiQueryFeatureState.

	* dlls/msi/msi.c:
	msi: MsiGetComponentPath cannot return INSTALLSTATE_ADVERTISED.

2006-07-16  Paul Millar <paul@astro.gla.ac.uk>

	* configure, configure.ac, include/config.h.in, libs/wine/loader.c:
	libwine: Add a configure check for setrlimit.

2006-07-17  Alexandre Julliard <julliard@winehq.org>

	* tools/winegcc/winegcc.c:
	winegcc: Make sure the Wine library paths take precedence in Wine mode.

2006-07-17  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

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

2006-07-15  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/comctl32/listview.c:
	comctl32: Use struct member after check for NULL (Coverity).

2006-07-15  Mike McCormack <mike@codeweavers.com>

	* dlls/shdocvw/regsvr.c:
	shdocvw: Write the "Microsoft Browser Architecture" CLSID.

2006-07-16  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/regsvr.c:
	urlmon: Register zone and security manager.

	* dlls/urlmon/session.c, dlls/urlmon/tests/misc.c,
	  dlls/urlmon/urlmon_main.c:
	urlmon: Added UrlMkGetSessionOption implementation.

	* dlls/urlmon/umon.c:
	urlmon: Use URL_FILE_USE_PATHURL flag to combine urls.

	* include/urlmon.idl:
	urlmon.idl: Added some missing declarations.

	* dlls/mshtml/htmldoc.c:
	mshtml: Added get_all implementation.

2006-07-17  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/notepad/Da.rc:
	notepad: Fix typo in Danish translation spotted by Henrik Olsen.

2006-07-16  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/keyboard.c:
	dinput: Unacquire correct device.

	* dlls/dinput/keyboard.c:
	dinput: Ignore repeated key events.

2006-07-16  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Allocate 4 extra bytes in the dib section.

2006-07-16  Duane Clark <fpga@pacbell.net>

	* tools/examine-relay:
	examine-relay: Indent winex11.drv lines.

2006-07-15  Duane Clark <dclark@akamail.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: Set PD_PAGENUMS from print dialog.

2006-07-15  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

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

2006-07-14  James Hawkins <truiken@gmail.com>

	* dlls/wininet/internet.c, dlls/wininet/tests/url.c:
	wininet: Add more tests for InternetCrackurl.

	* dlls/msi/dialog.c:
	msi: Add handling for the ListBox dialog control.

2006-07-14  Milko Krachounov <milko@3mhz.net>

	* dlls/shell32/shell32_Bg.rc:
	shell32: Update Bulgarian translation.

	* dlls/mshtml/Bg.rc:
	mshtml: Update Bulgarian translation.

2006-07-16  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/security.c,
	  include/winbase.h:
	advapi32: Add CreateWellKnownSid and IsWellKnownSid.

2006-07-14  Robert Reif <reif@earthlink.net>

	* include/winnt.h:
	include: Add well known sids and quota limits to winnt.h.

2006-07-14  Krzysztof Foltman <wdev@foltman.com>

	* dlls/riched20/editor.c, dlls/riched20/editor.h, dlls/riched20/style.c:
	riched20: WM_SETFONT support.

2006-07-14  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/tests/compobj.c:
	ole32: Improve CoRegisterMessageFilter and add tests for it.

	* dlls/ole32/rpc.c:
	ole32: Free the buffer allocated in local_server_thread (found by Smatch).

2006-07-13  Aric Stewart <aric@codeweavers.com>

	* configure, configure.ac, dlls/comcat/Makefile.in,
	  dlls/comcat/information.c, dlls/comcat/tests/Makefile.in,
	  dlls/comcat/tests/comcat.c, programs/winetest/Makefile.in:
	comcat: cImplemented or cRequired of -1 means to match everything
	regardless of the implementation or categories.

2006-07-12  Stefan Siebert <stefan.siebert@ssiebert.de>

	* dlls/msi/files.c:
	msi: cabinet_notify - don't fail on files with the same filepath.

2006-07-13  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/wined3d/surface.c, dlls/wined3d/wined3d_main.c:
	wined3d: Only copy memory corresponding to the dib section instead of the
	power of 2 surface.

2006-07-14  András Kovács <andras@csevego.net>

	* dlls/shell32/shell32.spec, dlls/shell32/shellord.c:
	shell32: Stub for SHSetLocalizedName.

2006-07-13  Juan Lang <juan_lang@yahoo.com>

	* dlls/msi/appsearch.c:
	msi: Let caller set property in AppSearch.

2006-07-14  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	msi: Use awstring to return strings from MsiGetProductInfo.

	* dlls/msi/msi.c:
	msi: Read from the registry, not the database in MsiGetProductInfo.

	* dlls/msi/msipriv.h, dlls/msi/registry.c:
	msi: Add some registry reading macro functions.

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/helpers.c,
	  dlls/msi/msipriv.h, dlls/msi/registry.c, dlls/msi/upgrade.c:
	msi: Move version string conversions to registry.c.

	* dlls/msi/classes.c, dlls/msi/msipriv.h, dlls/msi/registry.c:
	msi: Move some registry helper functions to registry.c.

2006-07-13  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c:
	crypt32: Correct self-signed cert creation.
	- use correct function names for rpcrt functions
	- use CryptGenRandom to create unique serial numbers

2006-07-13  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.y:
	widl: Support coclass forward declarations.

	* tools/widl/header.c:
	widl: Fix unterminated comment in generated code.

2006-07-13  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix cmp instruction for GLSL.
	The current GLSL cmp instruction is incorrect, because:
	- it ignores destination write mask
	- it ignores source swizzle
	- it ignores other source modifiers.
	- it works incorrectly for src0 = 0

	* dlls/wined3d/device.c:
	wined3d: Fix light state bugs.

2006-07-14  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: Don't execute a function in ITypeInfo::Invoke if it has the
	FUNCFLAG_FRESTRICTED flag.
	Add some more tests for ITypeInfo::Invoke.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Implement GetClassID for the OLE picture class.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix Variance Callback Functions.
	A callback function for computing the variance puts the computed value
	into the same field as a conformance, so make sure to copy the value
	into pCount before returning from ComputeConformanceOrVariance.

	* dlls/rpcrt4/cpsf.c:
	rpcrt4: Add the threading model and a description when registering a CLSID
	for the PSFactoryBuffer.

	* dlls/ole32/compobj.c, dlls/ole32/tests/compobj.c:
	ole32: Add validation of parameters to CoGetClassObject and make sure to
	initialise ppv to NULL.

2006-07-13  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/dinput/device.c, dlls/gdi/tests/brush.c, dlls/winedos/int10.c,
	  dlls/winex11.drv/xim.c:
	Fix swapped 2nd and 3rd argument passed to memset.

2006-07-14  Alexandre Julliard <julliard@winehq.org>

	* programs/msiexec/msiexec.c:
	msiexec: Invert the return values of the boolean functions so that
	their names make more sense.

2006-07-13  James Hawkins <truiken@gmail.com>

	* programs/msiexec/msiexec.c:
	msiexec: Also support options using a hyphen.

	* dlls/msi/dialog.c:
	msi: Add handling for the GroupBox dialog control.

2006-07-13  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* tools/winedump/pe.c:
	winedump: Write-strings warnings fix.

2006-07-14  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Revert the error exit code for warnings, it causes more
	trouble than it's worth.

2006-07-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c, loader/kthread.c, loader/pthread.c:
	ntdll: Make sure to not unmap anything from reserved areas
	when using NtFreeVirtualMemory with the MEM_SYSTEM flag.

	* dlls/ntdll/virtual.c:
	ntdll: Use the map_view() function to allocate TEBs, now that it supports an
	arbitrary granularity.

	* dlls/ntdll/virtual.c:
	ntdll: Support for arbitrary memory allocation granularity.

2006-07-12  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/notepad/Bg.rc, programs/notepad/Cs.rc, programs/notepad/Da.rc,
	  programs/notepad/De.rc, programs/notepad/Eo.rc,
	  programs/notepad/Es.rc, programs/notepad/Fi.rc,
	  programs/notepad/Fr.rc, programs/notepad/Hu.rc,
	  programs/notepad/It.rc, programs/notepad/Ja.rc,
	  programs/notepad/Ko.rc, programs/notepad/Nl.rc,
	  programs/notepad/No.rc, programs/notepad/Pl.rc,
	  programs/notepad/Pt.rc, programs/notepad/Ru.rc,
	  programs/notepad/Si.rc, programs/notepad/Sk.rc,
	  programs/notepad/Sw.rc, programs/notepad/Th.rc,
	  programs/notepad/Tr.rc, programs/notepad/Wa.rc,
	  programs/notepad/Zh.rc:
	notepad: Fix the ellipsis and shortcuts in menus.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Ru.rc, programs/wordpad/Tr.rc:
	wordpad: Add shortcuts in menus.

2006-07-13  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comdlg32/cdlg_Pl.rc:
	comdlg32: Update Polish translation.

2006-07-13  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c:
	ole32: Don't loop while peeking messages in CoWaitForMultipleHandles.
	It increases the latency on completing the COM call and could result in
	the COM call never completing in some circumstances.

	* dlls/oleaut32/typelib.c:
	oleaut32: Convert void return types to the VT_EMPTY variant type in
	ITypeInfo::Invoke.

	* dlls/oleaut32/typelib.c:
	oleaut32: Typelib interfaces with the FDUAL flag should also be registered,
	since dispinterfaces don't have the FDISPATCHABLE flag.

	* dlls/ws2_32/socket.c, include/ws2tcpip.h:
	include: Add NI_* defines and add a WS(socklen_t) type.

	* dlls/rpcrt4/rpcrt4.spec, dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Add a stub for I_RpcMapWin32Status.

	* dlls/dbghelp/path.c:
	dbghelp: Fix the finding of PDB DS-type files.

2006-07-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/brsfolder.c:
	shell32: Avoid using macros that cause gcc warnings.

	* dlls/kernel/process.c, dlls/ntdll/loader.c, include/winternl.h:
	ntdll: Moved the calling of the process entry point to LdrInitializeThunk.

	* dlls/kernel/kernel_main.c, dlls/kernel/process.c:
	kernel32: Moved initialisation of the console handles to DllMain.

2006-07-12  James Hawkins <truiken@gmail.com>

	* dlls/shlwapi/tests/path.c:
	shlwapi: Add tests for PathCommonPrefixA.

	* dlls/shlwapi/tests/path.c:
	shlwapi: Add tests for PathBuildRootA.

	* dlls/msi/install.c, dlls/msi/tests/package.c:
	msi: Update the files target paths as well, because a parent directory might
	have been changed.

2006-07-12  Thomas Kho <tkho@ucla.edu>

	* programs/notepad/dialog.c:
	notepad: Change file not saved alert title to match Windows' notepad.exe.

	* programs/notepad/En.rc, programs/notepad/dialog.c:
	notepad: Change window title to be like Windows' notepad.exe.

2006-07-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: Write-strings warnings fix.

	* dlls/mshtml/main.c:
	mshtml: Write-strings warnings fix.

2006-07-11  James Hawkins <truiken@gmail.com>

	* dlls/urlmon/umon.c:
	urlmon: Implement URLDownloadToCacheFileW.

2006-07-10  Ge van Geldorp <ge@gse.nl>

	* dlls/user/class.c, include/wine/server_protocol.h, server/protocol.def,
	  server/trace.c:
	user32: Implement Get/SetClassLongPtrA/W.

2006-07-11  Andrew Ziem <ahziem1@mailbolt.com>

	* dlls/user/sysparams.c:
	user: Implement Ascii version of SPI_GETDESKWALLPAPER.

2006-07-12  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/stg_prop.c, dlls/ole32/tests/stg_prop.c:
	ole32: Only return S_FALSE in IPropertyStorage::ReadMultiple if a property
	was not found.

	* dlls/ole32/clipboard.c:
	ole32: Small cleanups.

	* dlls/ole32/stg_prop.c:
	ole32: Remove unnecessary assert(This) calls.

	* dlls/ole32/stg_prop.c, dlls/ole32/tests/stg_prop.c:
	ole32: Fix and test reading and writing of VT_CF properties.

2006-07-12  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/comctl_Bg.rc, dlls/comctl32/comctl_Cn.rc,
	  dlls/comctl32/comctl_Cs.rc, dlls/comctl32/comctl_De.rc,
	  dlls/comctl32/comctl_En.rc, dlls/comctl32/comctl_Eo.rc,
	  dlls/comctl32/comctl_Es.rc, dlls/comctl32/comctl_Fr.rc,
	  dlls/comctl32/comctl_Hu.rc, dlls/comctl32/comctl_It.rc,
	  dlls/comctl32/comctl_Ja.rc, dlls/comctl32/comctl_Ko.rc,
	  dlls/comctl32/comctl_Nl.rc, dlls/comctl32/comctl_No.rc,
	  dlls/comctl32/comctl_Pl.rc, dlls/comctl32/comctl_Pt.rc,
	  dlls/comctl32/comctl_Ru.rc, dlls/comctl32/comctl_Si.rc,
	  dlls/comctl32/comctl_Sv.rc, dlls/comctl32/comctl_Th.rc,
	  dlls/comctl32/comctl_Tr.rc, dlls/comctl32/comctl_Uk.rc,
	  dlls/comctl32/propsheet.c:
	comctl32: Use wsprintf instead of strcat building the properties
	dialog title to allow different word orders.

2006-07-12  Juan Lang <juan_lang@yahoo.com>

	* dlls/msi/appsearch.c:
	msi: Split up ACTION_AppSearchReg.

	* dlls/crypt32/store.c:
	crypt32: Add stubs for some stores.

	* dlls/crypt32/crypt32.spec:
	crypt32: Forward CreateFileU to CreateFileW.

2006-07-11  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/gdi/driver.c, dlls/gdi/enhmfdrv/init.c, dlls/gdi/font.c,
	  dlls/gdi/freetype.c, dlls/gdi/gdi_private.h, dlls/gdi/mfdrv/init.c,
	  dlls/wineps.drv/builtin.c, dlls/wineps.drv/psdrv.h,
	  dlls/wineps.drv/wineps.drv.spec, dlls/winex11.drv/codepage.c,
	  dlls/winex11.drv/text.c, dlls/winex11.drv/winex11.drv.spec,
	  dlls/winex11.drv/x11font.h:
	gdi32: Implement GetTextExtentPoint in terms of GetTextExtentExPoint
	(not vice versa) for efficiency (required adding the Ex functionality
	to drivers).

	* dlls/gdi/tests/font.c:
	gdi32: Add conformance test for GetTextExtentExPointW.

2006-07-12  Mike McCormack <mike@codeweavers.com>

	* dlls/query/query_main.c:
	query: Return a more appropriate error code from CIState.

2006-07-11  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/urlmon/regsvr.c:
	urlmon: Write-strings warnings fix.

2006-07-12  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/utils.c:
	wined3d: Texture stages that reference NULL textures should just pass
	through the result of the previous stage.

	* dlls/wined3d/device.c, include/wine/wined3d_gl.h:
	wined3d: Fix specular color handling for register combiners.
	By default the FinalCombiner is setup to add the specular color to the
	final result of the combiner operations. However, it should only do
	this when the WINED3DRS_SPECULARENABLE renderstate is enabled.

2006-07-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Check the color data type too when deciding whether to convert data.

2006-07-11  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/stg_prop.c:
	ole32: Implement IPropertyStorage::Enum using enumx.

	* dlls/ole32/stg_prop.c:
	ole32: Clean up some declarations.

	* dlls/ole32/stg_prop.c:
	ole32: Use enumx to implement IPropertySetStorage::Enum.

	* dlls/ole32/Makefile.in, dlls/ole32/enumx.c, dlls/ole32/enumx.h:
	ole32: Add a framework for implementing IEnum* interfaces.

2006-07-12  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/ole2.c:
	ole32: Don't warn when clearing PropVariants that don't have allocated memory.

	* dlls/ole32/tests/stg_prop.c, dlls/ole32/tests/storage32.c:
	ole32: Fix conformance test to compile with MSVC6.

	* dlls/ole32/stg_prop.c:
	ole32: This cannot be NULL, so don't check it.

	* dlls/ole32/stg_prop.c:
	ole32: Only return S_FALSE in IPropertyStorage::ReadMultiple if a property
	was not found.

2006-07-11  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/ole2.c:
	ole32: Allocate copied VT_CF data correctly in PropVariantCopy.

2006-07-11  Bang Jun-Young <bang.junyoung@gmail.com>

	* dlls/avifil32/Makefile.in:
	avifil32: Remove unnecessary dependency on ntdll.

2006-07-11  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/tests/cert.c, include/wincrypt.h:
	crypt32: Implement CryptAcquireCertificatePrivateKey.

2006-07-11  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/lsa.c:
	advapi32: Fix LsaQueryInformationPolicy HeapAlloc bug.

	* include/ntsecapi.h:
	include: Add more policy structures to ntsecapi.h.

2006-07-11  Alexandre Julliard <julliard@winehq.org>

	* libs/Makefile.in, tools/winewrapper:
	libs: Get rid of the libwine symlinks.

	* Make.rules.in, dlls/Makedll.rules.in, dlls/Maketest.rules.in,
	  programs/Makeprog.rules.in, tools/winegcc/winegcc.c:
	winegcc: Automatically add the correct lib paths when building inside the
	Wine tree.

	* Make.rules.in, libs/Makefile.in, tools/widl/Makefile.in,
	  tools/wrc/Makefile.in:
	libs: Get rid of the symlinks for the static libs.

	* Make.rules.in, configure, configure.ac, dlls/advapi32/Makefile.in,
	  dlls/advpack/Makefile.in, dlls/atl/Makefile.in,
	  dlls/avifil32/Makefile.in, dlls/comcat/Makefile.in,
	  dlls/comctl32/Makefile.in, dlls/comdlg32/Makefile.in,
	  dlls/crtdll/Makefile.in, dlls/devenum/Makefile.in,
	  dlls/dmloader/Makefile.in, dlls/dmusic/Makefile.in,
	  dlls/dnsapi/Makefile.in, dlls/dplayx/Makefile.in,
	  dlls/dxdiagn/Makefile.in, dlls/gdi/Makefile.in,
	  dlls/hhctrl.ocx/Makefile.in, dlls/hlink/Makefile.in,
	  dlls/infosoft/Makefile.in, dlls/inseng/Makefile.in,
	  dlls/itss/Makefile.in, dlls/kernel/Makefile.in,
	  dlls/lz32/Makefile.in, dlls/mapi32/Makefile.in,
	  dlls/mciavi32/Makefile.in, dlls/mcicda/Makefile.in,
	  dlls/mciseq/Makefile.in, dlls/mciwave/Makefile.in,
	  dlls/midimap/Makefile.in, dlls/mlang/Makefile.in,
	  dlls/mpr/Makefile.in, dlls/msacm32.drv/Makefile.in,
	  dlls/msacm32/Makefile.in, dlls/msdmo/Makefile.in,
	  dlls/mshtml/Makefile.in, dlls/msi/Makefile.in,
	  dlls/msvcrt/Makefile.in, dlls/msvcrt20/Makefile.in,
	  dlls/msvfw32/Makefile.in, dlls/msxml3/Makefile.in,
	  dlls/ntdll/Makefile.in, dlls/objsel/Makefile.in,
	  dlls/odbc32/Makefile.in, dlls/odbccp32/Makefile.in,
	  dlls/ole32/Makefile.in, dlls/oleaut32/Makefile.in,
	  dlls/powrprof/Makefile.in, dlls/qcap/Makefile.in,
	  dlls/quartz/Makefile.in, dlls/query/Makefile.in,
	  dlls/riched20/Makefile.in, dlls/rpcrt4/Makefile.in,
	  dlls/serialui/Makefile.in, dlls/setupapi/Makefile.in,
	  dlls/shdocvw/Makefile.in, dlls/shell32/Makefile.in,
	  dlls/shlwapi/Makefile.in, dlls/urlmon/Makefile.in,
	  dlls/user/Makefile.in, dlls/userenv/Makefile.in,
	  dlls/uxtheme/Makefile.in, dlls/version/Makefile.in,
	  dlls/winedos/Makefile.in, dlls/winex11.drv/Makefile.in,
	  dlls/wininet/Makefile.in, dlls/winmm/Makefile.in,
	  dlls/winmm/joystick/Makefile.in, dlls/winmm/winearts/Makefile.in,
	  dlls/winmm/winejack/Makefile.in, dlls/winmm/winenas/Makefile.in,
	  dlls/winmm/wineoss/Makefile.in, dlls/winspool.drv/Makefile.in,
	  dlls/wnaspi32/Makefile.in, dlls/ws2_32/Makefile.in, libs/Makefile.in,
	  libs/unicode/Makefile.in, libs/unicode/c_037.c,
	  libs/unicode/c_10000.c, libs/unicode/c_10006.c,
	  libs/unicode/c_10007.c, libs/unicode/c_10029.c,
	  libs/unicode/c_1006.c, libs/unicode/c_10079.c,
	  libs/unicode/c_10081.c, libs/unicode/c_1026.c, libs/unicode/c_1250.c,
	  libs/unicode/c_1251.c, libs/unicode/c_1252.c, libs/unicode/c_1253.c,
	  libs/unicode/c_1254.c, libs/unicode/c_1255.c, libs/unicode/c_1256.c,
	  libs/unicode/c_1257.c, libs/unicode/c_1258.c, libs/unicode/c_20127.c,
	  libs/unicode/c_20866.c, libs/unicode/c_20932.c,
	  libs/unicode/c_21866.c, libs/unicode/c_28591.c,
	  libs/unicode/c_28592.c, libs/unicode/c_28593.c,
	  libs/unicode/c_28594.c, libs/unicode/c_28595.c,
	  libs/unicode/c_28596.c, libs/unicode/c_28597.c,
	  libs/unicode/c_28598.c, libs/unicode/c_28599.c,
	  libs/unicode/c_28600.c, libs/unicode/c_28603.c,
	  libs/unicode/c_28604.c, libs/unicode/c_28605.c,
	  libs/unicode/c_28606.c, libs/unicode/c_424.c, libs/unicode/c_437.c,
	  libs/unicode/c_500.c, libs/unicode/c_737.c, libs/unicode/c_775.c,
	  libs/unicode/c_850.c, libs/unicode/c_852.c, libs/unicode/c_855.c,
	  libs/unicode/c_856.c, libs/unicode/c_857.c, libs/unicode/c_860.c,
	  libs/unicode/c_861.c, libs/unicode/c_862.c, libs/unicode/c_863.c,
	  libs/unicode/c_864.c, libs/unicode/c_865.c, libs/unicode/c_866.c,
	  libs/unicode/c_869.c, libs/unicode/c_874.c, libs/unicode/c_875.c,
	  libs/unicode/c_878.c, libs/unicode/c_932.c, libs/unicode/c_936.c,
	  libs/unicode/c_949.c, libs/unicode/c_950.c, libs/unicode/casemap.c,
	  libs/unicode/collation.c, libs/unicode/compose.c,
	  libs/unicode/cpmap.pl, libs/unicode/cptable.c, libs/unicode/defaults,
	  libs/unicode/fold.c, libs/unicode/mbtowc.c, libs/unicode/sortkey.c,
	  libs/unicode/string.c, libs/unicode/utf8.c, libs/unicode/wctomb.c,
	  libs/unicode/wctype.c, libs/unicode/wine_unicode.def,
	  libs/unicode/wine_unicode.map, libs/wine/Makefile.in,
	  libs/wine/c_037.c, libs/wine/c_10000.c, libs/wine/c_10006.c,
	  libs/wine/c_10007.c, libs/wine/c_10029.c, libs/wine/c_1006.c,
	  libs/wine/c_10079.c, libs/wine/c_10081.c, libs/wine/c_1026.c,
	  libs/wine/c_1250.c, libs/wine/c_1251.c, libs/wine/c_1252.c,
	  libs/wine/c_1253.c, libs/wine/c_1254.c, libs/wine/c_1255.c,
	  libs/wine/c_1256.c, libs/wine/c_1257.c, libs/wine/c_1258.c,
	  libs/wine/c_20127.c, libs/wine/c_20866.c, libs/wine/c_20932.c,
	  libs/wine/c_21866.c, libs/wine/c_28591.c, libs/wine/c_28592.c,
	  libs/wine/c_28593.c, libs/wine/c_28594.c, libs/wine/c_28595.c,
	  libs/wine/c_28596.c, libs/wine/c_28597.c, libs/wine/c_28598.c,
	  libs/wine/c_28599.c, libs/wine/c_28600.c, libs/wine/c_28603.c,
	  libs/wine/c_28604.c, libs/wine/c_28605.c, libs/wine/c_28606.c,
	  libs/wine/c_424.c, libs/wine/c_437.c, libs/wine/c_500.c,
	  libs/wine/c_737.c, libs/wine/c_775.c, libs/wine/c_850.c,
	  libs/wine/c_852.c, libs/wine/c_855.c, libs/wine/c_856.c,
	  libs/wine/c_857.c, libs/wine/c_860.c, libs/wine/c_861.c,
	  libs/wine/c_862.c, libs/wine/c_863.c, libs/wine/c_864.c,
	  libs/wine/c_865.c, libs/wine/c_866.c, libs/wine/c_869.c,
	  libs/wine/c_874.c, libs/wine/c_875.c, libs/wine/c_878.c,
	  libs/wine/c_932.c, libs/wine/c_936.c, libs/wine/c_949.c,
	  libs/wine/c_950.c, libs/wine/casemap.c, libs/wine/collation.c,
	  libs/wine/compose.c, libs/wine/cpmap.pl, libs/wine/cptable.c,
	  libs/wine/defaults, libs/wine/fold.c, libs/wine/mbtowc.c,
	  libs/wine/sortkey.c, libs/wine/string.c, libs/wine/utf8.c,
	  libs/wine/wctomb.c, libs/wine/wctype.c, libs/wine/wine.def,
	  libs/wine/wine.map, programs/msiexec/Makefile.in,
	  programs/rundll32/Makefile.in, programs/winemenubuilder/Makefile.in,
	  server/Makefile.in, tools/Makefile.in, tools/wmc/Makefile.in,
	  tools/wrc/Makefile.in:
	libs: Merged libwine_unicode into libwine.
	Most dlls use libwine_unicode at this point, so there's nothing to
	gain by having two separate libraries.

2006-07-10  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/decode.c:
	crypt32: Check a pointer before dereferencing it (Coverity).

	* dlls/shell32/pidl.c, dlls/shell32/tests/shlfolder.c:
	shell32: Always NULL-terminate path in SHGetPathFromIDList.

2006-07-11  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, dlls/Makefile.in, dlls/infosoft/Makefile.in,
	  dlls/infosoft/infosoft.spec, dlls/infosoft/infosoft_main.c,
	  dlls/infosoft/wordbreaker.c:
	infosoft: Add a word breaker for English.

2006-07-10  Ge van Geldorp <ge@gse.nl>

	* tools/winebuild/import.c:
	winebuild: Save registers which might contain parameters for the function to
	be called.

	* dlls/kernel/resource.c, include/winternl.h:
	ntdll: Widen fields in LDR_RESOURCE_INFO to accomodate 64 bit pointers.

2006-07-10  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/package.c:
	msi: Test how SetTargetPath affects the target paths of install files.

2006-07-09  James Hawkins <truiken@gmail.com>

	* dlls/msi/appsearch.c:
	msi: AppSearchReg shouldn't create the key it's looking for if it doesn't exist.

2006-07-10  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/vartest.c, dlls/oleaut32/variant.c:
	oleaut32: Conformance test and patch for VarCat.

2006-07-10  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Improve GetAdapterMonitor stub.

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: More flow control instructions.
	- Implement call, callnz, label, and ret
	- Implement support for NOT modifier

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: More flow control instructions
	- Implement if, else, endif, rep, endrep, break
	- Implement ifc, breakc, using undocumented comparison bits in the instruction
	token
	- Fix bug in main loop processing of codes with no dst token
	- Fix bug in GLSL output modifier processing of codes with no dst token
	- Fix bug in loop implementation (src1 contains the integer data, src0 is aL)
	- Add versioning for all the instructions above, and remove
	GLSL_REQUIRED thing, which is useless and should be removed from all
	opcodes in general.

2006-07-09  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Fix off-by-one constants bug.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Clamp texcoord output between 0 and 1.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Place immediate constants in the same array as global constants.
	- move DEF, DEFI, DEFB handling into the register counting pass
	- keep track of defined constants as a linked list (because there's a
	few of them)
	- apply immediate constants after global constants in the constant
	loading function
	- both types of constants now get loaded with array notation in the
	shader (into the same array)

2006-07-10  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h,
	  dlls/ddraw/ddraw_thunks.c, dlls/ddraw/palette.c,
	  dlls/ddraw/tests/refcount.c:
	ddraw: Palette refcounting fix.
	Do not AddRef the DirectDraw interfaces in CreatePalette of older
	interface version, and add a test for that.

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h,
	  dlls/ddraw/ddraw_thunks.c, dlls/ddraw/direct3d.c, dlls/ddraw/main.c,
	  dlls/ddraw/surface.c, dlls/ddraw/tests/refcount.c:
	ddraw: Split up the ddraw refcount.

2006-07-10  Mike McCormack <mike@codeweavers.com>

	* include/Makefile.in, include/cierror.h:
	include: Add cierror.h.

2006-07-11  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/storage32.c:
	ole32: Only print a FIXME if necessary in StgOpenStorageEx.

	* include/indexsvr.idl:
	indexsvr.h: Fix a typo.

2006-07-10  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/wined3d/directx.c:
	wined3d: Add an "\n" to a fixme to fix another overflow (in
	IWineD3DImpl_CheckDeviceFormatConversion).

2006-07-10  Juan Lang <juan_lang@yahoo.com>

	* dlls/riched20/richole.c, include/.gitignore, include/Makefile.in,
	  include/tom.idl:
	riched20: Add stub implementation of ITextDocument.

	* dlls/crypt32/cert.c, dlls/crypt32/tests/cert.c:
	crypt32: Implement key context property, with tests.

2006-07-10  Ge van Geldorp <ge@gse.nl>

	* programs/winedbg/be_x86_64.c, programs/winedbg/debugger.h:
	winedbg: Implement some x86_64 backend routines.

	* tools/winebuild/spec32.c:
	winebuild: Reserve enough space for null function pointer.

	* server/queue.c:
	server: Widen lparam for timers.

2006-07-10  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shell32/shlview.c:
	shell32: Write-strings warning fix.

2006-07-08  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/crypt32/tests/encode.c:
	crypt32/tests: Write-strings warnings test.

2006-07-11  Alexandre Julliard <julliard@winehq.org>

	* server/ptrace.c:
	server: Fixed get_thread_context for x86_64.

2006-07-10  Bang Jun-Young <bang.junyoung@gmail.com>

	* dlls/amstream/amstream.c, include/mmstream.idl:
	amstream: Fix argument types to match the PSDK.

2006-07-11  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/notepad/En.rc:
	notepad: En.rc: Fix the ellipsis in menu.

2006-07-10  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement removeChild.

2006-07-10  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/query.c:
	dnsapi: Fix a buffer overrun (Coverity).

	* dlls/wldap32/ber.c:
	wldap32: Document the ber functions.

	* dlls/wldap32/rename.c:
	wldap32: Document the rename functions.

	* tools/wine.inf:
	wine.inf: Add msi to the list of fake dlls.

2006-07-10  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/En.rc, programs/oleview/resource.h,
	  programs/oleview/typelib.c:
	oleview: Added more fields to TypeLib Viewer tree.

2006-07-08  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Always verify mime using FindMimeFromData.

	* dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added test of DoVerb.

	* dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added GetMiscStatus test.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Call SetMenu in activate_ui.

	* dlls/mshtml/olewnd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added OnFrameWindowActivate implementation.

2006-07-08  Bang Jun-Young <bang.junyoung@gmail.com>

	* dlls/advapi32/registry.c, include/winreg.h:
	advapi32: Fix registry API prototypes to match the PSDK.

2006-07-10  Alexandre Julliard <julliard@winehq.org>

	* include/.gitignore, include/wine/.gitignore:
	include/.gitignore: Moved the wine subdir ignore list to the main file.

	* libs/.gitignore, libs/unicode/.gitignore, libs/wine/.gitignore:
	libs/.gitignore: Added wildcards for libraries.

	* .gitignore, dlls/msi/.gitignore, libs/wpp/.gitignore,
	  programs/winedbg/.gitignore, programs/winhelp/.gitignore,
	  tools/widl/.gitignore, tools/wmc/.gitignore, tools/wrc/.gitignore:
	.gitignore: Added wildcards to ignore lex and bison output files.

	* .gitignore, dlls/amstream/.gitignore, dlls/atl/.gitignore,
	  dlls/avifil32/.gitignore, dlls/cabinet/.gitignore,
	  dlls/cards/.gitignore, dlls/comcat/.gitignore,
	  dlls/comctl32/.gitignore, dlls/comctl32/tests/.gitignore,
	  dlls/comdlg32/.gitignore, dlls/crypt32/.gitignore,
	  dlls/d3d8/.gitignore, dlls/d3d9/.gitignore, dlls/d3dim/.gitignore,
	  dlls/d3drm/.gitignore, dlls/d3dxof/.gitignore, dlls/ddraw/.gitignore,
	  dlls/devenum/.gitignore, dlls/dinput/.gitignore,
	  dlls/dinput8/.gitignore, dlls/dmband/.gitignore,
	  dlls/dmcompos/.gitignore, dlls/dmime/.gitignore,
	  dlls/dmloader/.gitignore, dlls/dmscript/.gitignore,
	  dlls/dmstyle/.gitignore, dlls/dmsynth/.gitignore,
	  dlls/dmusic/.gitignore, dlls/dmusic32/.gitignore,
	  dlls/dplay/.gitignore, dlls/dplayx/.gitignore, dlls/dpnet/.gitignore,
	  dlls/dpnhpast/.gitignore, dlls/dsound/.gitignore,
	  dlls/dswave/.gitignore, dlls/dxdiagn/.gitignore, dlls/gdi/.gitignore,
	  dlls/gphoto2.ds/.gitignore, dlls/hhctrl.ocx/.gitignore,
	  dlls/iccvid/.gitignore, dlls/kernel/.gitignore,
	  dlls/kernel/messages/.gitignore, dlls/mciavi32/.gitignore,
	  dlls/mpr/.gitignore, dlls/msacm32/.gitignore, dlls/mscms/.gitignore,
	  dlls/msdmo/.gitignore, dlls/mshtml/.gitignore, dlls/msi/.gitignore,
	  dlls/msrle32/.gitignore, dlls/msvcrt/.gitignore,
	  dlls/msvfw32/.gitignore, dlls/msvidc32/.gitignore,
	  dlls/mswsock/.gitignore, dlls/objsel/.gitignore,
	  dlls/ole32/.gitignore, dlls/oleaut32/.gitignore,
	  dlls/oledlg/.gitignore, dlls/opengl32/.gitignore,
	  dlls/qcap/.gitignore, dlls/quartz/.gitignore,
	  dlls/riched20/.gitignore, dlls/sane.ds/.gitignore,
	  dlls/serialui/.gitignore, dlls/setupapi/.gitignore,
	  dlls/shdocvw/.gitignore, dlls/shell32/.gitignore,
	  dlls/shlwapi/.gitignore, dlls/stdole2.tlb/.gitignore,
	  dlls/stdole32.tlb/.gitignore, dlls/urlmon/.gitignore,
	  dlls/user/resources/.gitignore, dlls/user/tests/.gitignore,
	  dlls/uxtheme/.gitignore, dlls/version/tests/.gitignore,
	  dlls/wineps.drv/.gitignore, dlls/wininet/.gitignore,
	  dlls/winmm/.gitignore, dlls/winspool.drv/.gitignore,
	  dlls/wintrust/.gitignore, dlls/wldap32/.gitignore,
	  dlls/ws2_32/.gitignore, dlls/wsock32/.gitignore,
	  programs/clock/.gitignore, programs/cmdlgtst/.gitignore,
	  programs/msiexec/.gitignore, programs/notepad/.gitignore,
	  programs/oleview/.gitignore, programs/progman/.gitignore,
	  programs/regedit/.gitignore, programs/regsvr32/.gitignore,
	  programs/start/.gitignore, programs/taskmgr/.gitignore,
	  programs/uninstaller/.gitignore, programs/view/.gitignore,
	  programs/wcmd/.gitignore, programs/winecfg/.gitignore,
	  programs/wineconsole/.gitignore, programs/winefile/.gitignore,
	  programs/winemine/.gitignore, programs/winetest/.gitignore,
	  programs/winhelp/.gitignore, programs/wordpad/.gitignore:
	.gitignore: Added wildcards to ignore generated resource files.

	* dlls/.gitignore, dlls/advapi32/tests/.gitignore,
	  dlls/advpack/tests/.gitignore, dlls/cabinet/tests/.gitignore,
	  dlls/comctl32/tests/.gitignore, dlls/comdlg32/tests/.gitignore,
	  dlls/crypt32/tests/.gitignore, dlls/d3d8/tests/.gitignore,
	  dlls/d3d9/tests/.gitignore, dlls/ddraw/tests/.gitignore,
	  dlls/dinput/tests/.gitignore, dlls/dnsapi/tests/.gitignore,
	  dlls/dsound/tests/.gitignore, dlls/gdi/tests/.gitignore,
	  dlls/iphlpapi/tests/.gitignore, dlls/kernel/tests/.gitignore,
	  dlls/lz32/tests/.gitignore, dlls/make_dlls,
	  dlls/mapi32/tests/.gitignore, dlls/mlang/tests/.gitignore,
	  dlls/msacm32/tests/.gitignore, dlls/mscms/tests/.gitignore,
	  dlls/mshtml/tests/.gitignore, dlls/msi/tests/.gitignore,
	  dlls/msvcrt/tests/.gitignore, dlls/msvcrtd/tests/.gitignore,
	  dlls/msxml3/tests/.gitignore, dlls/netapi32/tests/.gitignore,
	  dlls/ntdll/tests/.gitignore, dlls/ole32/tests/.gitignore,
	  dlls/oleaut32/tests/.gitignore, dlls/psapi/tests/.gitignore,
	  dlls/quartz/tests/.gitignore, dlls/riched20/tests/.gitignore,
	  dlls/rpcrt4/tests/.gitignore, dlls/rsabase/tests/.gitignore,
	  dlls/rsaenh/tests/.gitignore, dlls/secur32/tests/.gitignore,
	  dlls/setupapi/tests/.gitignore, dlls/shdocvw/tests/.gitignore,
	  dlls/shell32/tests/.gitignore, dlls/shlwapi/tests/.gitignore,
	  dlls/urlmon/tests/.gitignore, dlls/user/tests/.gitignore,
	  dlls/usp10/tests/.gitignore, dlls/uxtheme/tests/.gitignore,
	  dlls/version/tests/.gitignore, dlls/wininet/tests/.gitignore,
	  dlls/winmm/tests/.gitignore, dlls/winspool.drv/tests/.gitignore,
	  dlls/ws2_32/tests/.gitignore:
	make_dlls: Recursively ignore .ok files in all tests directories.

	* dlls/.gitignore, dlls/advapi32/tests/.gitignore,
	  dlls/advpack/tests/.gitignore, dlls/cabinet/tests/.gitignore,
	  dlls/comctl32/tests/.gitignore, dlls/comdlg32/tests/.gitignore,
	  dlls/crypt32/tests/.gitignore, dlls/d3d8/tests/.gitignore,
	  dlls/d3d9/tests/.gitignore, dlls/ddraw/tests/.gitignore,
	  dlls/dinput/tests/.gitignore, dlls/dnsapi/tests/.gitignore,
	  dlls/dsound/tests/.gitignore, dlls/gdi/tests/.gitignore,
	  dlls/iphlpapi/tests/.gitignore, dlls/kernel/tests/.gitignore,
	  dlls/lz32/tests/.gitignore, dlls/make_dlls,
	  dlls/mapi32/tests/.gitignore, dlls/mlang/tests/.gitignore,
	  dlls/msacm32/tests/.gitignore, dlls/mscms/tests/.gitignore,
	  dlls/mshtml/tests/.gitignore, dlls/msi/tests/.gitignore,
	  dlls/msvcrt/tests/.gitignore, dlls/msvcrtd/tests/.gitignore,
	  dlls/msxml3/tests/.gitignore, dlls/netapi32/tests/.gitignore,
	  dlls/ntdll/tests/.gitignore, dlls/ole32/tests/.gitignore,
	  dlls/oleaut32/tests/.gitignore, dlls/psapi/tests/.gitignore,
	  dlls/quartz/tests/.gitignore, dlls/riched20/tests/.gitignore,
	  dlls/rpcrt4/tests/.gitignore, dlls/rsabase/tests/.gitignore,
	  dlls/rsaenh/tests/.gitignore, dlls/secur32/tests/.gitignore,
	  dlls/setupapi/tests/.gitignore, dlls/shdocvw/tests/.gitignore,
	  dlls/shell32/tests/.gitignore, dlls/shlwapi/tests/.gitignore,
	  dlls/urlmon/tests/.gitignore, dlls/user/tests/.gitignore,
	  dlls/usp10/tests/.gitignore, dlls/uxtheme/tests/.gitignore,
	  dlls/version/tests/.gitignore, dlls/wininet/tests/.gitignore,
	  dlls/winmm/tests/.gitignore, dlls/winspool.drv/tests/.gitignore,
	  dlls/ws2_32/tests/.gitignore:
	make_dlls: Recursively ignore testlist.c in all tests directories.

	* programs/.gitignore, programs/clock/.gitignore,
	  programs/cmdlgtst/.gitignore, programs/control/.gitignore,
	  programs/eject/.gitignore, programs/expand/.gitignore,
	  programs/explorer/.gitignore, programs/hh/.gitignore,
	  programs/icinfo/.gitignore, programs/iexplore/.gitignore,
	  programs/make_progs, programs/msiexec/.gitignore,
	  programs/notepad/.gitignore, programs/oleview/.gitignore,
	  programs/progman/.gitignore, programs/regedit/.gitignore,
	  programs/regsvr32/.gitignore, programs/rpcss/.gitignore,
	  programs/rundll32/.gitignore, programs/start/.gitignore,
	  programs/taskmgr/.gitignore, programs/uninstaller/.gitignore,
	  programs/view/.gitignore, programs/wcmd/.gitignore,
	  programs/wineboot/.gitignore, programs/winebrowser/.gitignore,
	  programs/winecfg/.gitignore, programs/wineconsole/.gitignore,
	  programs/winedbg/.gitignore, programs/winefile/.gitignore,
	  programs/winemenubuilder/.gitignore, programs/winemine/.gitignore,
	  programs/winepath/.gitignore, programs/winetest/.gitignore,
	  programs/winevdm/.gitignore, programs/winhelp/.gitignore,
	  programs/winver/.gitignore, programs/wordpad/.gitignore:
	make_progs: Generate the .gitignore file.
	Ignore generated programs from the top-level .gitignore.

	* dlls/.gitignore, dlls/activeds/.gitignore, dlls/advapi32/.gitignore,
	  dlls/advpack/.gitignore, dlls/atl/.gitignore,
	  dlls/avicap32/.gitignore, dlls/avifil32/.gitignore,
	  dlls/cabinet/.gitignore, dlls/capi2032/.gitignore,
	  dlls/cards/.gitignore, dlls/cfgmgr32/.gitignore,
	  dlls/comctl32/.gitignore, dlls/comdlg32/.gitignore,
	  dlls/compstui/.gitignore, dlls/crtdll/.gitignore,
	  dlls/crypt32/.gitignore, dlls/cryptdll/.gitignore,
	  dlls/ctl3d32/.gitignore, dlls/d3d8/.gitignore, dlls/d3d9/.gitignore,
	  dlls/d3dim/.gitignore, dlls/d3drm/.gitignore, dlls/d3dx8/.gitignore,
	  dlls/d3dxof/.gitignore, dlls/dbghelp/.gitignore,
	  dlls/dciman32/.gitignore, dlls/ddraw/.gitignore,
	  dlls/dinput/.gitignore, dlls/dinput8/.gitignore,
	  dlls/dmusic32/.gitignore, dlls/dnsapi/.gitignore,
	  dlls/dplay/.gitignore, dlls/dplayx/.gitignore, dlls/dpnet/.gitignore,
	  dlls/dsound/.gitignore, dlls/gdi/.gitignore, dlls/glu32/.gitignore,
	  dlls/glut32/.gitignore, dlls/icmp/.gitignore,
	  dlls/imagehlp/.gitignore, dlls/imm32/.gitignore,
	  dlls/iphlpapi/.gitignore, dlls/kernel/.gitignore,
	  dlls/lz32/.gitignore, dlls/make_dlls, dlls/mapi32/.gitignore,
	  dlls/mlang/.gitignore, dlls/mpr/.gitignore, dlls/mprapi/.gitignore,
	  dlls/msacm32/.gitignore, dlls/mscms/.gitignore,
	  dlls/msdmo/.gitignore, dlls/msftedit/.gitignore,
	  dlls/mshtml/.gitignore, dlls/msi/.gitignore, dlls/msimg32/.gitignore,
	  dlls/msvcrt/.gitignore, dlls/msvcrt20/.gitignore,
	  dlls/msvcrt40/.gitignore, dlls/msvcrtd/.gitignore,
	  dlls/msvfw32/.gitignore, dlls/mswsock/.gitignore,
	  dlls/netapi32/.gitignore, dlls/newdev/.gitignore,
	  dlls/ntdll/.gitignore, dlls/ntdsapi/.gitignore,
	  dlls/odbc32/.gitignore, dlls/odbccp32/.gitignore,
	  dlls/ole32/.gitignore, dlls/oleacc/.gitignore,
	  dlls/oleaut32/.gitignore, dlls/olecli32/.gitignore,
	  dlls/oledlg/.gitignore, dlls/olepro32/.gitignore,
	  dlls/olesvr32/.gitignore, dlls/opengl32/.gitignore,
	  dlls/powrprof/.gitignore, dlls/psapi/.gitignore,
	  dlls/quartz/.gitignore, dlls/rasapi32/.gitignore,
	  dlls/riched20/.gitignore, dlls/rpcrt4/.gitignore,
	  dlls/rsaenh/.gitignore, dlls/secur32/.gitignore,
	  dlls/sensapi/.gitignore, dlls/serialui/.gitignore,
	  dlls/setupapi/.gitignore, dlls/sfc/.gitignore,
	  dlls/shdocvw/.gitignore, dlls/shell32/.gitignore,
	  dlls/shfolder/.gitignore, dlls/shlwapi/.gitignore,
	  dlls/snmpapi/.gitignore, dlls/sti/.gitignore, dlls/tapi32/.gitignore,
	  dlls/unicows/.gitignore, dlls/url/.gitignore, dlls/urlmon/.gitignore,
	  dlls/user/.gitignore, dlls/usp10/.gitignore, dlls/uxtheme/.gitignore,
	  dlls/vdmdbg/.gitignore, dlls/version/.gitignore,
	  dlls/wined3d/.gitignore, dlls/winedos/.gitignore,
	  dlls/wininet/.gitignore, dlls/winmm/.gitignore,
	  dlls/winnls32/.gitignore, dlls/winspool.drv/.gitignore,
	  dlls/wintab32/.gitignore, dlls/wintrust/.gitignore,
	  dlls/wldap32/.gitignore, dlls/wnaspi32/.gitignore,
	  dlls/wow32/.gitignore, dlls/ws2_32/.gitignore,
	  dlls/wsock32/.gitignore, dlls/wtsapi32/.gitignore:
	make_dlls: Ignore generated import libraries from the top-level .gitignore.

	* dlls/.gitignore, dlls/make_dlls:
	make_dlls: Generate the .gitignore file.

	* .gitignore, dlls/.gitignore, dlls/activeds/.gitignore,
	  dlls/advapi32/.gitignore, dlls/advapi32/tests/.gitignore,
	  dlls/advpack/.gitignore, dlls/advpack/tests/.gitignore,
	  dlls/amstream/.gitignore, dlls/atl/.gitignore,
	  dlls/avicap32/.gitignore, dlls/avifil32/.gitignore,
	  dlls/cabinet/.gitignore, dlls/cabinet/tests/.gitignore,
	  dlls/capi2032/.gitignore, dlls/cards/.gitignore,
	  dlls/cfgmgr32/.gitignore, dlls/comcat/.gitignore,
	  dlls/comctl32/.gitignore, dlls/comctl32/tests/.gitignore,
	  dlls/comdlg32/.gitignore, dlls/comdlg32/tests/.gitignore,
	  dlls/compstui/.gitignore, dlls/crtdll/.gitignore,
	  dlls/crypt32/.gitignore, dlls/crypt32/tests/.gitignore,
	  dlls/cryptdll/.gitignore, dlls/cryptnet/.gitignore,
	  dlls/ctl3d32/.gitignore, dlls/d3d8/.gitignore,
	  dlls/d3d8/tests/.gitignore, dlls/d3d9/.gitignore,
	  dlls/d3d9/tests/.gitignore, dlls/d3dim/.gitignore,
	  dlls/d3drm/.gitignore, dlls/d3dx8/.gitignore, dlls/d3dxof/.gitignore,
	  dlls/dbghelp/.gitignore, dlls/dciman32/.gitignore,
	  dlls/ddraw/.gitignore, dlls/ddraw/tests/.gitignore,
	  dlls/devenum/.gitignore, dlls/dinput/.gitignore,
	  dlls/dinput/tests/.gitignore, dlls/dinput8/.gitignore,
	  dlls/dmband/.gitignore, dlls/dmcompos/.gitignore,
	  dlls/dmime/.gitignore, dlls/dmloader/.gitignore,
	  dlls/dmscript/.gitignore, dlls/dmstyle/.gitignore,
	  dlls/dmsynth/.gitignore, dlls/dmusic/.gitignore,
	  dlls/dmusic32/.gitignore, dlls/dnsapi/.gitignore,
	  dlls/dnsapi/tests/.gitignore, dlls/dplay/.gitignore,
	  dlls/dplayx/.gitignore, dlls/dpnet/.gitignore,
	  dlls/dpnhpast/.gitignore, dlls/dsound/.gitignore,
	  dlls/dsound/tests/.gitignore, dlls/dswave/.gitignore,
	  dlls/dxdiagn/.gitignore, dlls/dxerr8/.gitignore,
	  dlls/dxerr9/.gitignore, dlls/dxguid/.gitignore, dlls/gdi/.gitignore,
	  dlls/gdi/tests/.gitignore, dlls/glu32/.gitignore,
	  dlls/glut32/.gitignore, dlls/gphoto2.ds/.gitignore,
	  dlls/hhctrl.ocx/.gitignore, dlls/hlink/.gitignore,
	  dlls/iccvid/.gitignore, dlls/icmp/.gitignore,
	  dlls/ifsmgr.vxd/.gitignore, dlls/imaadp32.acm/.gitignore,
	  dlls/imagehlp/.gitignore, dlls/imm32/.gitignore,
	  dlls/inseng/.gitignore, dlls/iphlpapi/.gitignore,
	  dlls/iphlpapi/tests/.gitignore, dlls/itss/.gitignore,
	  dlls/kernel/.gitignore, dlls/kernel/messages/.gitignore,
	  dlls/kernel/tests/.gitignore, dlls/lz32/.gitignore,
	  dlls/lz32/tests/.gitignore, dlls/mapi32/.gitignore,
	  dlls/mapi32/tests/.gitignore, dlls/mciavi32/.gitignore,
	  dlls/mcicda/.gitignore, dlls/mciseq/.gitignore,
	  dlls/mciwave/.gitignore, dlls/midimap/.gitignore,
	  dlls/mlang/.gitignore, dlls/mlang/tests/.gitignore,
	  dlls/mmdevldr.vxd/.gitignore, dlls/monodebg.vxd/.gitignore,
	  dlls/mpr/.gitignore, dlls/mprapi/.gitignore,
	  dlls/msacm32.drv/.gitignore, dlls/msacm32/.gitignore,
	  dlls/msacm32/tests/.gitignore, dlls/msadp32.acm/.gitignore,
	  dlls/mscms/.gitignore, dlls/mscms/tests/.gitignore,
	  dlls/msdmo/.gitignore, dlls/msftedit/.gitignore,
	  dlls/msg711.acm/.gitignore, dlls/mshtml/.gitignore,
	  dlls/mshtml/tests/.gitignore, dlls/msi/.gitignore,
	  dlls/msi/tests/.gitignore, dlls/msimg32/.gitignore,
	  dlls/msisys.ocx/.gitignore, dlls/msnet32/.gitignore,
	  dlls/msrle32/.gitignore, dlls/msvcrt/.gitignore,
	  dlls/msvcrt/tests/.gitignore, dlls/msvcrt20/.gitignore,
	  dlls/msvcrt40/.gitignore, dlls/msvcrtd/.gitignore,
	  dlls/msvcrtd/tests/.gitignore, dlls/msvfw32/.gitignore,
	  dlls/msvidc32/.gitignore, dlls/mswsock/.gitignore,
	  dlls/msxml3/.gitignore, dlls/msxml3/tests/.gitignore,
	  dlls/netapi32/.gitignore, dlls/netapi32/tests/.gitignore,
	  dlls/newdev/.gitignore, dlls/ntdll/.gitignore,
	  dlls/ntdll/tests/.gitignore, dlls/ntdsapi/.gitignore,
	  dlls/objsel/.gitignore, dlls/odbc32/.gitignore,
	  dlls/odbccp32/.gitignore, dlls/ole32/.gitignore,
	  dlls/ole32/tests/.gitignore, dlls/oleacc/.gitignore,
	  dlls/oleaut32/.gitignore, dlls/oleaut32/tests/.gitignore,
	  dlls/olecli32/.gitignore, dlls/oledlg/.gitignore,
	  dlls/olepro32/.gitignore, dlls/olesvr32/.gitignore,
	  dlls/opengl32/.gitignore, dlls/powrprof/.gitignore,
	  dlls/psapi/.gitignore, dlls/psapi/tests/.gitignore,
	  dlls/qcap/.gitignore, dlls/quartz/.gitignore,
	  dlls/quartz/tests/.gitignore, dlls/query/.gitignore,
	  dlls/rasapi32/.gitignore, dlls/riched20/.gitignore,
	  dlls/riched20/tests/.gitignore, dlls/riched32/.gitignore,
	  dlls/rpcrt4/.gitignore, dlls/rpcrt4/tests/.gitignore,
	  dlls/rsabase/.gitignore, dlls/rsabase/tests/.gitignore,
	  dlls/rsaenh/.gitignore, dlls/rsaenh/tests/.gitignore,
	  dlls/sane.ds/.gitignore, dlls/secur32/.gitignore,
	  dlls/secur32/tests/.gitignore, dlls/security/.gitignore,
	  dlls/sensapi/.gitignore, dlls/serialui/.gitignore,
	  dlls/setupapi/.gitignore, dlls/setupapi/tests/.gitignore,
	  dlls/sfc/.gitignore, dlls/shdocvw/.gitignore,
	  dlls/shdocvw/tests/.gitignore, dlls/shell32/.gitignore,
	  dlls/shell32/tests/.gitignore, dlls/shfolder/.gitignore,
	  dlls/shlwapi/.gitignore, dlls/shlwapi/tests/.gitignore,
	  dlls/snmpapi/.gitignore, dlls/spoolss/.gitignore,
	  dlls/stdole2.tlb/.gitignore, dlls/stdole32.tlb/.gitignore,
	  dlls/sti/.gitignore, dlls/strmiids/.gitignore,
	  dlls/tapi32/.gitignore, dlls/twain_32/.gitignore,
	  dlls/unicows/.gitignore, dlls/url/.gitignore, dlls/urlmon/.gitignore,
	  dlls/urlmon/tests/.gitignore, dlls/user/.gitignore,
	  dlls/user/resources/.gitignore, dlls/user/tests/.gitignore,
	  dlls/userenv/.gitignore, dlls/usp10/.gitignore,
	  dlls/usp10/tests/.gitignore, dlls/uuid/.gitignore,
	  dlls/uxtheme/.gitignore, dlls/uxtheme/tests/.gitignore,
	  dlls/vdhcp.vxd/.gitignore, dlls/vdmdbg/.gitignore,
	  dlls/version/.gitignore, dlls/version/tests/.gitignore,
	  dlls/vmm.vxd/.gitignore, dlls/vnbt.vxd/.gitignore,
	  dlls/vnetbios.vxd/.gitignore, dlls/vtdapi.vxd/.gitignore,
	  dlls/vwin32.vxd/.gitignore, dlls/w32skrnl/.gitignore,
	  dlls/winecrt0/.gitignore, dlls/wined3d/.gitignore,
	  dlls/winedos/.gitignore, dlls/winemp3.acm/.gitignore,
	  dlls/wineps.drv/.gitignore, dlls/winex11.drv/.gitignore,
	  dlls/wininet/.gitignore, dlls/wininet/tests/.gitignore,
	  dlls/winmm/.gitignore, dlls/winmm/joystick/.gitignore,
	  dlls/winmm/tests/.gitignore, dlls/winmm/winealsa/.gitignore,
	  dlls/winmm/winearts/.gitignore, dlls/winmm/wineaudioio/.gitignore,
	  dlls/winmm/winecoreaudio/.gitignore, dlls/winmm/wineesd/.gitignore,
	  dlls/winmm/winejack/.gitignore, dlls/winmm/winenas/.gitignore,
	  dlls/winmm/wineoss/.gitignore, dlls/winnls32/.gitignore,
	  dlls/winspool.drv/.gitignore, dlls/winspool.drv/tests/.gitignore,
	  dlls/wintab32/.gitignore, dlls/wintrust/.gitignore,
	  dlls/wldap32/.gitignore, dlls/wnaspi32/.gitignore,
	  dlls/wow32/.gitignore, dlls/ws2_32/.gitignore,
	  dlls/ws2_32/tests/.gitignore, dlls/wsock32/.gitignore,
	  dlls/wtsapi32/.gitignore, documentation/.gitignore, fonts/.gitignore,
	  include/.gitignore, include/wine/.gitignore, libs/.gitignore,
	  libs/port/.gitignore, libs/unicode/.gitignore, libs/wine/.gitignore,
	  libs/wpp/.gitignore, loader/.gitignore, programs/.gitignore,
	  programs/clock/.gitignore, programs/cmdlgtst/.gitignore,
	  programs/control/.gitignore, programs/eject/.gitignore,
	  programs/expand/.gitignore, programs/explorer/.gitignore,
	  programs/hh/.gitignore, programs/icinfo/.gitignore,
	  programs/iexplore/.gitignore, programs/msiexec/.gitignore,
	  programs/notepad/.gitignore, programs/oleview/.gitignore,
	  programs/progman/.gitignore, programs/regedit/.gitignore,
	  programs/regsvr32/.gitignore, programs/rpcss/.gitignore,
	  programs/rundll32/.gitignore, programs/start/.gitignore,
	  programs/taskmgr/.gitignore, programs/uninstaller/.gitignore,
	  programs/view/.gitignore, programs/wcmd/.gitignore,
	  programs/wineboot/.gitignore, programs/winebrowser/.gitignore,
	  programs/winecfg/.gitignore, programs/wineconsole/.gitignore,
	  programs/winedbg/.gitignore, programs/winefile/.gitignore,
	  programs/winemenubuilder/.gitignore, programs/winemine/.gitignore,
	  programs/winepath/.gitignore, programs/winetest/.gitignore,
	  programs/winevdm/.gitignore, programs/winhelp/.gitignore,
	  programs/winver/.gitignore, programs/wordpad/.gitignore,
	  server/.gitignore, tools/.gitignore, tools/widl/.gitignore,
	  tools/winapi/.gitignore, tools/winebuild/.gitignore,
	  tools/winedump/.gitignore, tools/winegcc/.gitignore,
	  tools/wmc/.gitignore, tools/wrc/.gitignore:
	Take advantage of the recursive nature of .gitignore for Makefile entries.
	Prefix other entries with '/' to make them non-recursive.

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

----------------------------------------------------------------
2006-07-07  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, dlls/Makefile.in, dlls/query/.gitignore,
	  dlls/query/Makefile.in, dlls/query/query.spec,
	  dlls/query/query_main.c:
	query: Add a skeleton for query.dll.

2006-07-07  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c, dlls/advpack/tests/install.c:
	advpack: Add tests for different configurations of INF filenames and
	working directories for install functions.

2006-07-10  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, include/basetsd.h, include/windef.h,
	  tools/winegcc/winegcc.c:
	configure: Define _WIN64 when building on a 64-bit platform.

	* include/msvcrt/direct.h, include/msvcrt/malloc.h,
	  include/msvcrt/mbstring.h, include/msvcrt/search.h,
	  include/msvcrt/stdio.h, include/msvcrt/stdlib.h,
	  include/msvcrt/sys/types.h, include/msvcrt/time.h,
	  include/msvcrt/wchar.h:
	include/msvcrt: Fix all definitions of size_t for Win64.

	* dlls/msvcrt/ctype.c, dlls/msvcrt/locale.c, dlls/msvcrt/msvcrt.h,
	  dlls/msvcrt/time.c:
	msvcrt: Avoid including system headers in msvcrt.h.

2006-07-07  Mike McCormack <mike@codeweavers.com>

	* include/Makefile.in, include/ntquery.h:
	query: Add ntquery.h.

2006-07-07  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/ntdll/tests/reg.c:
	ntdll/tests: Added some NULL testing.

2006-07-10  Alexandre Julliard <julliard@winehq.org>

	* server/registry.c:
	server: Only accept 0 as registry handle in functions that take a parent key.

2006-07-08  Robert Shearman <rob@codeweavers.com>

	* include/winerror.h:
	include: Add more error codes used by newer versions of COM.

	* dlls/oleaut32/typelib2.c:
	oleaut32: Make ctl2_hash_guid match the same function in widl, which has likely
	had much wider testing.

	* dlls/oleaut32/typelib.c:
	oleaut32: MSFT_DoFuncs: "reclength" of the function information record is stored
	in a 16 bit int and not in a 8 bit int as previously supposed, using a 0x1ff
	mask. Upper 16 bits contains the ordinal number of the function.
	Allocation of the "recbuf" must be modified, to support larger data
	(based on a patch by White Snake <whitesnake78@mail.com>).

2006-07-08  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/oleaut32/tests/vartest.c, dlls/oleaut32/variant.c:
	oleaut32: Copying a NULL BSTR should result in an empty BSTR in VariantCopy.

2006-07-07  Thomas Kho <tkho@ucla.edu>

	* dlls/winex11.drv/mouse.c:
	winex11: Use correct multiplier for negative relative mouse movements.

2006-07-07  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c:
	crypt32: Implement revocation check in CertVerifySubjectCertificateContext.

2006-07-08  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/shell32/shell32_Ko.rc:
	shell32: Updated Korean resource.

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

2006-07-08  Paul Vriens <Paul.Vriens@xs4all.nl>

	* programs/winecfg/Nl.rc:
	winecfg: Nl.rc: Shift Graphics page up to fill the empty place.

2006-07-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/winecfg/audio.c:
	winecfg: Write-strings warnings fix.

2006-07-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/urlmon_main.c:
	urlmon: Register protocol handlers in DllMain.

	* dlls/urlmon/urlmon_main.c:
	urlmon: Use non heap based objects for class factories.

2006-07-07  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix typo breaking 3.0 pshaders color input.

2006-07-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/event.c:
	winex11.drv: Protect X11 calls by a critical section.

	* dlls/user/focus.c, dlls/user/tests/win.c, server/queue.c,
	  server/trace.c, server/window.c:
	user: Improve SetActiveWindow test, add SetForegroundWindow test, make them
	pass under Wine.

2006-07-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface_gdi.c, dlls/wined3d/swapchain.c,
	  dlls/winex11.drv/opengl.c:
	Add a common fps counter channel to ddraw, opengl and d3d.

2006-07-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Create nsWineURI even if we don't have valid nsIURI.

	* dlls/shdocvw/tests/Makefile.in, dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added test of SetClientSite.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Call GetContainer in SetClientSite.

	* dlls/uuid/uuid.c, include/.gitignore, include/Makefile.in,
	  include/htiframe.idl:
	include: Added htiframe.idl.

2006-07-07  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/baseshader.c:
	wined3d: Trace ABS/ABSNEG modifiers.

	* dlls/wined3d/drawprim.c, dlls/wined3d/vertexshader.c:
	wined3d: Create fake input semantics for d3d8 shaders.
	Use them to remove the need for loading arrays in two different places.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Reverse semantics maps for shaders.

	* dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h:
	wined3d: Make WINED3D_ATR macros more flexible.
	Make them operate on a type, as opposed to a semantic name.

	* dlls/wined3d/drawprim.c, include/wine/wined3d_types.h:
	wined3d: Simplify primitiveDeclartationConvertToStrided.
	Assign fixed indices to declaration inputs.
	Then use a common path to load the strided data.

	* dlls/ddraw/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_types.h:
	wined3d: Add position_transformed flag to Strided data format.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c:
	wined3d: Only link and use GLSL program if at least one GLSL shader is available.

2006-07-06  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shell32_En.rc, dlls/shell32/shell32_main.h,
	  dlls/shell32/shfldr_unixfs.c, dlls/shell32/shlfileop.c,
	  dlls/shell32/shresdef.h:
	shell32: Show a confirmation before deleting files with syscalls.

	* dlls/shell32/shfldr_unixfs.c:
	shell32: If possible use SHFileOperationW to delete in unixfs.
	This gives confirmation dialogs, recursive directory removal etc.

2006-07-07  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: map_axis must be able to work with LONG's value range.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Remove redundant struct members.

2006-07-06  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Implement the GetProperty call for getting the range of an axis.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Call fake_current_js_state on the places where it is actually needed
	in SetProperty.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Only fake the current state on axes that are actually there.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Move the axes and button configs into the JoyDev struct.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Utilize the offsets and the transform to support the user
	supplied data format.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Adds offset and transform and their basic handling to the joystick
	implementation.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: When handling axes, ignore the ABS_HAT.* as they are handled as POV.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Set the amount of POVs in the caps.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Detect more than one /dev/input/event joystick.

2006-07-07  Jason Green <jave27@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix D3DSIO_TEXKILL for GLSL.

2006-07-07  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winecfg/En.rc:
	winecfg: Shift Graphics page up to fill the empty place.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d8/surface.c, dlls/d3d8/swapchain.c, dlls/d3d8/tests/device.c:
	d3d8: Fix remaining refcount tests and tighten all tests.

2006-07-07  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wininet/ftp.c:
	wininet: Use correct way of determining the password for anonymous ftp.

2006-07-07  Pierre d'Herbemont <pdherbemont@free.fr>

	* dlls/shell32/shell.c, dlls/shell32/shlfileop.c:
	shell: Move SHIsFileAvailableOffline from shell.c to shlfileop.c to
	ensure the 16/32 bits separation.

	* server/context_powerpc.c:
	server: Fix context_powerpc.c compilation.

2006-07-07  Mike McCormack <mike@codeweavers.com>

	* dlls/uuid/uuid.c:
	uuid: Add indexsvr's IIDs to libuuid.

	* include/.gitignore, include/Makefile.in, include/indexsvr.idl:
	include: Add indexsvr.idl (IWordBreaker).

2006-07-07  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/riched20/caret.c:
	riched20: Replace an if-statement with empty body with a FIXME comment.

	* dlls/comctl32/trackbar.c, dlls/mlang/tests/mlang.c,
	  dlls/msg711.acm/msg711.c, dlls/rpcrt4/ndr_marshall.c,
	  dlls/user/driver16.c, dlls/wined3d/drawprim.c,
	  dlls/winex11.drv/wintab.c, dlls/winmm/driver.c,
	  dlls/wintab32/context.c:
	janitorial: Put "inline static" at the beginning of a declaration.

	* dlls/shell32/systray.c, dlls/wined3d/wined3d_private.h,
	  programs/explorer/systray.c:
	janitorial: Move the storage specifier to the beginning of the declaration.

2006-07-06  Thomas Kho <tkho@ucla.edu>

	* programs/notepad/main.c:
	notepad: Change window classname from NPClass to Notepad.

2006-07-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added image/x-png mime filter.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added image/bmp filter.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added image/gif filter.

	* dlls/urlmon/tests/misc.c:
	urlmon: Added more test of FindMimeFromData.

	* dlls/urlmon/urlmon_main.c:
	urlmon: Fix handling of proposed mime.

	* dlls/urlmon/urlmon_main.c:
	urlmon: Added image/pjpeg mime filter.

2006-07-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/regedit/listview.c:
	regedit: Write-strings warning fix.

2006-07-06  Robert Shearman <rob@codeweavers.com>

	* tools/widl/header.c, tools/widl/parser.l, tools/widl/parser.y,
	  tools/widl/typegen.c, tools/widl/widltypes.h:
	widl: Add support for the builtin constants "TRUE" and "FALSE".

	* dlls/ole32/compobj.c:
	ole32: Fix the return value of COM_RegReadPath and make it static.

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: ITypeComp_fnBind should do case-insensitive compares on the name
	passed in.

	* dlls/oleaut32/olepicture.c, include/rpcndr.h:
	oleaut32: Add a typedef for "boolean".
	Fix up an conflict that this type has with jpeglib.h.

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: Fix the error code returned by ITypeComp on an interface when the
	name matches, but the flags don't.

2006-07-05  James Hawkins <truiken@gmail.com>

	* dlls/advapi32/security.c:
	advapi32: Get the token type in ImpersonateLoggedOnUser.

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: Add tests for LookupAccountSid.

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

	* dlls/winex11.drv/event.c:
	winex11.drv: Add window style and visibility status to the take focus event
	trace.

2006-07-05  Jason Green <jave27@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Fix D3DSIO_M#X# instruction for both ARB and GLSL shaders.
	This instruction was being handled incorrectly in the case where the
	2nd src argument contained a relatively addressed constant.

2006-07-06  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/kernel/tests/file.c:
	kernel/tests: More tests for OpenFile.

2006-07-04  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wininet/ftp.c:
	wininet: Return NULL handle if no connection is established.

2006-07-04  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Clean up drawPrimitive/drawPrimitiveDrawStrided.

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c,
	  dlls/d3d9/tests/vertexdeclaration.c, dlls/d3d9/vertexdeclaration.c,
	  dlls/wined3d/device.c:
	wined3d: Implement FVF to DECL9 conversion (with tests).

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move register count pass to SetFunction.
	Move semantics pointers out of the reg_maps, make them persistent data
	in the shader (again, for future software shaders).

	* dlls/wined3d/device.c:
	wined3d: Fix STREAM flag override.

	* dlls/wined3d/vertexdeclaration.c:
	wined3d: Add missing PSIZE register for decl8->9 conversion.

	* dlls/wined3d/device.c:
	wined3d: Allow mix of SW vertex and GLSL pixel shader.
	Do not attach non-GLSL shaders to the GLSL program, that will cause a
	crash. Mix with ARB shaders is never going to happen, because the
	selection code will always choose GLSL for both or ARB for both.

	* dlls/wined3d/baseshader.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Rework shader mode selection.
	- currently half the shader selection code (GLSL vs ARB) is in
	fillGLcaps. The parts that check for software shaders are in
	GetDeviceCaps. That placement, will work, but is definitely not optimal.
	FillGLcaps should detect support - it should not make decision as to
	what's used, because that's not what the purpose of the function is.
	GetDeviceCaps should report support as it has already been selected.
	Instead, select shader mode in its own function, called in the
	appropriate places.
	- unifying pixel and vertex shaders into a single selection is a
	mistake. A software vertex shader can be coupled with a hardware arb or
	glsl pixel shader, or no shader at all. Split them back into two and add
	a SHADER_NONE variant.
	- drawprim is doing support checks for ARB_PROGRAM, and making shader
	decisions based on that - that's wrong, support has already been
	checked, and decided upon, and shaders can be implemented via software,
	ARB_PROGRAm or GLSL, so that support check isn't valid.
	- Store the shader selected mode into the shader itself. Different types
	of shaders can be combined, so this is an improvement. In fact, storing
	the mode into the settings globally is a mistake as well - it should be
	done per device, since different cards have different capabilities.

2006-07-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/tests/.gitignore, dlls/shdocvw/tests/Makefile.in,
	  dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added test of IProvideClassInfo.

2006-07-06  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	msi: Features may be published but absent.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Add a test for MsiGetComponentPath and make it pass.

	* dlls/msi/msi.c:
	msi: Use msi_strcpy_to_awstring to return the string in MsiComponentGetPath.

2006-06-30  Ge van Geldorp <ge@gse.nl>

	* configure, configure.ac:
	configure: Allow relocation on x86_64.

2006-07-05  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/txtrange.c:
	mshtml: Added get_text implementation.

	* dlls/mshtml/Makefile.in, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/selection.c, dlls/mshtml/txtrange.c:
	mshtml: Added createRange implementation.

	* dlls/mshtml/selection.c:
	mshtml: Added get_type implementation.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl,
	  dlls/mshtml/selection.c:
	mshtml: Added get_selection implementation.

	* dlls/mshtml/olecmd.c:
	mshtml: Return S_OK in Exec(IDM_BASELINEFONT3).

2006-07-05  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c, dlls/wined3d/utils.c:
	wined3d: Flip WINED3DFMT_R8G8B8 to GL_RGB.

2006-07-05  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	msi: Forward MsiUseFeature to MsiUseFeatureEx.

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

	* fonts/Makefile.in:
	fonts: Fix a copy/paste bug preventing correct generation of the
	System font for codepages 1256 and 1257.

2006-07-03  James Hawkins <truiken@gmail.com>

	* dlls/wininet/internet.c:
	wininet: Error out if hInternet is a bad handle.

	* dlls/wininet/ftp.c:
	wininet: Use a blank password if none is provided in FTP_Connect.

2006-07-03  Detlef Riekenberg <wine.dev@web.de>

	* configure, configure.ac, dlls/comdlg32/Makefile.in,
	  dlls/comdlg32/tests/.gitignore, dlls/comdlg32/tests/Makefile.in,
	  dlls/comdlg32/tests/printdlg.c, programs/winetest/Makefile.in:
	comdlg32: Add initial test.

2006-07-02  Bang Jun-Young <bang.junyoung@gmail.com>

	* dlls/cryptnet/.gitignore:
	cryptnet: Add .gitignore.

2006-07-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user/tests/menu.c:
	user/tests: Write-strings warnings fix.

2006-07-03  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mapi32/sendmail.c:
	mapi32: Write-strings warnings fix.

2006-07-04  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/wininet.h:
	wininet.h: Add extra error code.

2006-07-04  Robert Reif <reif@earthlink.net>

	* dlls/dxdiagn/dxdiag_main.c:
	dxdiagn: Fix TRACE/FIXME formats.

2006-07-03  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/listview.c:
	comctl32: listview: Recompute header size after an insertion of a column.

2006-07-03  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/ntdll/reg.c:
	ntdll: Fix possible TRACE crash.

2006-07-03  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h:
	oleaut: Implement processing of modules for SLTG typelibs.
	Set funckind when processing SLTG functions.

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h:
	oleaut: Improve SLTG var support.
	Pass both the start of the block and the offset to the first item into
	SLTG_DoVars as they may be different.
	Process 0xfffe offsets for variable names - this means to use the
	previous name.
	Add support for parsing the optional varflags field.

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h:
	oleaut: Fix function support for SLTG dispinterfaces.

	* dlls/oleaut32/typelib.c:
	oleaut: Move the processing of functions in SLTG typelibs into a
	separate function and use it when processing dispinterfaces.

	* dlls/oleaut32/typelib.c:
	oleaut: Move the initialisation of memidConstructor and
	memidDestructor of type infos to the common ITypeInfo creation
	function.
	Remove the WARN message as this functionality isn't implemented in
	native either.

	* dlls/oleaut32/typelib.c:
	oleaut: Process references for SLTG dispatch types.

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h:
	oleaut: Abstract out the processing of variables in SLTG typelib components
	to a common function.

	* dlls/oleaut32/typelib.c:
	oleaut: Process references when parsing SLTG alias types.

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h:
	oleaut: Rename SLTG_DoType to SLTG_DoElem and split out the common TYPEDESC
	generating code to SLTG_DoType.
	Process SLTG alias types with SLTG_DoType as the data is stored in the
	same format as in other components of the typelib.

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h:
	oleaut: The SLTG_MemberHeader and SLTG_TypeInfoTail structures are
	common to all elements, so move the processing of these from the
	individual element processing.
	Improve SLTG alias processing.

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h:
	oleaut: Document some more members of SLTG_TypeInfoTail.

	* dlls/advapi32/service.c:
	advapi32: Fix the service function being called when extended is
	either set or not set (reported by Andrey Turkin).

2006-07-03  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Don't advance the buffer for FC_STRUCTPAD2.

2006-07-04  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Update Lithuanian keyboard layout to better match the X11 one.

2006-07-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/crypt32/protectdata.c, dlls/msi/table.c:
	Avoid non-portable WCHAR[] constructs.

2006-07-03  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add a function to print out D3DDECLUSAGE9 values.

	* dlls/wined3d/baseshader.c:
	wined3d: Fix faulty DCL trace.

2006-07-02  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Resync ARB mnxn function with GLSL mnxn function.

	* dlls/wined3d/baseshader.c:
	wined3d: Use shader_get_regtype() in register counting pass.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move SHADER_ARB code into arb_program_shader.c.

	* dlls/wined3d/device.c:
	wined3d: Cleanup: print constants in device code.

2006-07-03  Ivan Gyurdiev <ivg231@gmail.com>

	* include/d3d9types.h:
	d3d9: Fix FVF POSITION mask.

2006-07-02  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/typelib.c:
	oleview: Added next field to TypeLib viewer treeview control.

	* programs/oleview/typelib.c:
	oleview: Improved type handling in TypeLib viewer.

	* programs/oleview/En.rc, programs/oleview/Makefile.in,
	  programs/oleview/main.h, programs/oleview/oleview.c,
	  programs/oleview/resource.h, programs/oleview/typelib.c:
	oleview: Added open TypeLib file functionality.

	* programs/oleview/En.rc, programs/oleview/resource.h,
	  programs/oleview/typelib.c:
	oleview: Added type displaying in TypeLib Viewer.

2006-06-30  Thomas Kho <tkho@ucla.edu>

	* programs/wcmd/wcmdmain.c:
	wcmd: Modify option parser to allow compound options.

2006-07-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winmm/winealsa/audio.c:
	winmm/winealsa: Write-strings warning fix.

2006-07-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/taskmgr/dbgchnl.c:
	taskmgr: Write-strings warnings fix.

2006-06-30  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/tests/listview.c:
	comctl32/tests: Write-strings warnings fix.

2006-06-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/regedit/listview.c:
	regedit: Write-strings warnings fix.

2006-06-30  Hervé Poussineau <hpoussin@reactos.org>

	* dlls/mapi32/prop.c:
	mapi32: Use kernel32 functions instead of the ntdll ones.

2006-06-30  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/factory.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/shdocvw_main.c, tools/wine.inf:
	shdocvw: Get rid of Mozilla ActiveX control dependency.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/olecmd.c,
	  dlls/mshtml/oleobj.c:
	mshtml: Added beginning IDM_BROWSEMODE implementation.

	* tools/wine.inf:
	wine.inf: Set gecko url to activate Wine Gecko installer.

	* dlls/mshtml/install.c:
	mshtml: Add trailing '\' to gecko_path if needed.

2006-06-30  Ge van Geldorp <ge@gse.nl>

	* include/cvconst.h, programs/winedbg/be_x86_64.c:
	winedbg: Implement be_x86_64_init_registers.

	* include/msvcrt/string.h:
	include/msvcrt: Make sure size_t is properly defined for 64-bit.

	* programs/winedbg/be_alpha.c, programs/winedbg/be_i386.c,
	  programs/winedbg/be_ppc.c, programs/winedbg/debugger.h,
	  programs/winedbg/gdbproxy.c, programs/winedbg/memory.c,
	  programs/winedbg/stack.c:
	winedbg: Adjust the parameters of the backend read/write routines to
	match those of ReadProcessMemory/WriteProcessMemory, since those are
	the ones actually used.

	* server/thread.c:
	server: The "select" call passes handles, not ints.

2006-06-30  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/.gitignore, dlls/shell32/Makefile.in,
	  dlls/shell32/shlfileop.c, dlls/shell32/shres.rc,
	  dlls/shell32/shresdef.h:
	shell32: Add an icon for delete confirmation.

	* dlls/shell32/shlfileop.c:
	shell32: Allow for custom icons in confirmation messages.

	* dlls/shell32/shell32_main.h, dlls/shell32/shlfileop.c:
	shell32: Pass the correct parent hwnd to confirmation dialogs.

	* dlls/shell32/shlfileop.c:
	shell32: Remove the now unused SHELL_DeleteFileW.

2006-07-01  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/vartest.c, dlls/oleaut32/variant.c:
	oleaut32: Fix parsing of hex numbers with 'e' in the string by moving
	the exponent parsing to after the hex digit parsing.

2006-06-30  Robert Shearman <rob@codeweavers.com>

	* dlls/advapi32/service.c:
	advapi32: Implement RegisterServiceCtrlHandleExW.

2006-06-30  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/setupapi/tests/devinst.c:
	setupapi/tests: Add trailing '\n's to ok() calls.

2006-06-29  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/amstream/regsvr.c, dlls/avifil32/regsvr.c, dlls/comcat/regsvr.c,
	  dlls/d3dxof/regsvr.c, dlls/ddraw/regsvr.c, dlls/dinput/regsvr.c,
	  dlls/dmband/regsvr.c, dlls/dmcompos/regsvr.c, dlls/dmime/regsvr.c,
	  dlls/dmloader/regsvr.c, dlls/dmscript/regsvr.c,
	  dlls/dmstyle/regsvr.c, dlls/dmsynth/regsvr.c, dlls/dmusic/regsvr.c,
	  dlls/dplayx/regsvr.c, dlls/dpnet/regsvr.c, dlls/dsound/regsvr.c,
	  dlls/dswave/regsvr.c, dlls/dxdiagn/regsvr.c,
	  dlls/hhctrl.ocx/regsvr.c, dlls/itss/regsvr.c, dlls/mlang/regsvr.c,
	  dlls/msi/regsvr.c, dlls/objsel/regsvr.c, dlls/ole32/regsvr.c,
	  dlls/oleaut32/regsvr.c, dlls/shdocvw/regsvr.c, dlls/shell32/regsvr.c,
	  dlls/urlmon/regsvr.c:
	Use the return value of register_key_guid.

2006-06-30  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/En.rc, programs/oleview/typelib.c:
	oleview: Added base TypeLib Viewer menu functionality.

	* programs/oleview/En.rc, programs/oleview/main.h,
	  programs/oleview/typelib.c:
	oleview: Added status bar to TypeLib Viewer.

	* programs/oleview/En.rc, programs/oleview/Makefile.in,
	  programs/oleview/main.h, programs/oleview/oleview.c,
	  programs/oleview/pane.c, programs/oleview/resource.h,
	  programs/oleview/tree.c, programs/oleview/typelib.c:
	oleview: Added TypeLib Viewer base.
	- Added TypeLib Viewer base.
	- Fixed multiple instance of pane window functionality.
	- Added field with TypeLib path to ITEM_INFO structure.

2006-06-29  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c:
	wined3d: Perform sanity checks on the rectangle in LockRect.

2006-06-30  Piotr Caban <piotr.caban@gmail.com>

	* dlls/ddraw/ddraw.c:
	ddraw: Added missing '\n' in debug traces.

	* dlls/quartz/pin.c:
	quartz: Fixed crash in releasing uninitializes pAlloc and pReader.

2006-06-30  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/tests/marshal.c:
	ole32: When CoLockObjectExternal with fLock=TRUE is used on an object
	that hasn't yet been marshaled then it should create a new stub
	manager.

	* dlls/oleaut32/typelib.c:
	oleaut32: Fix a typo where the FIXME doesn't match the code.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Add a stub for RpcMgmtSetServerStackSize.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/registry.c:
	advapi32: Implement RegDisablePredefinedCache.

2006-06-30  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/ntdll/reg.c, dlls/ntdll/tests/reg.c:
	ntdll: Fix return codes for NtCreateKey (with tests).

2006-06-29  James Hawkins <truiken@gmail.com>

	* dlls/shlwapi/tests/path.c:
	shlwapi: Add tests for PathFindExtensionA.

	* dlls/shlwapi/tests/path.c:
	shlwapi: Add tests for PathCanonicalize.

2006-06-29  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shfldr_fs.c:
	shell32: Use SHFileOperationW to delete files.

2006-06-29  Ivan Leo <ivanleo@gmail.com>

	* dlls/shell32/tests/shlfileop.c:
	shell32/tests: Comment out a test that crashes on windows nt 4.0.

2006-06-29  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/device.c, dlls/ddraw/material.c, dlls/ddraw/viewport.c:
	ddraw: Fix some material related bugs.

	* dlls/ddraw/device.c, dlls/ddraw/executebuffer.c:
	ddraw: Matrix values in the execute buffer are handles.

2006-06-29  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Update window's full screen state on the resolution
	change as well as on the window resize event.

	* dlls/user/defwnd.c, dlls/user/dialog.c, dlls/user/message.c,
	  dlls/user/nonclient.c, dlls/user/win.c, dlls/user/winpos.c,
	  dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c, include/win.h,
	  include/winpos.h, include/winuser.h:
	include: Move appropriate parts of winpos.h to winuser.h and win.h,
	remove winpos.h afterwards.

2006-06-28  Maarten Lankhorst <M.B.Lankhorst@gmail.com>

	* configure, configure.ac, dlls/Makefile.in, dlls/cryptnet/Makefile.in,
	  dlls/cryptnet/cryptnet.spec, dlls/cryptnet/cryptnet_main.c:
	cryptnet: Implement a stub cryptnet dll.

2006-06-28  Juan Lang <juan_lang@yahoo.com>

	* programs/regedit/childwnd.c:
	regedit: Update status bar after editing key name.

2006-06-28  Jason Green <jave27@gmail.com>

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Fix a few GLSL shader instruction translations.
	This fixes the translations for a few instructions in GLSL and allows
	Cubemap sampling in pixel shaders < 2.0.  It makes some of the
	lighting on textures in Half Life 2 look better, including some of the
	water effects.	It's not perfect yet, but much closer now.

2006-06-28  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/marshal.c, dlls/ole32/tests/marshal.c:
	ole32: When marshaling a proxy make sure to maintain an external
	reference on the stub object so that the first proxy can be released.
	Implement external refcount sharing between a proxy and the marshaled proxy.
	Extend the marshaling of a proxy test to show that an external reference
	is always kept on the stub object.

	* dlls/ole32/tests/marshal.c:
	ole32: Add a test for CoCreateInstance doing object hosting by
	automatically creating an appropriate apartment for the object and
	returning a proxy to it.

	* dlls/ole32/compobj.c, dlls/ole32/ole32.spec:
	ole32: Implement CoGetObject.

	* dlls/oleaut32/typelib.c:
	oleaut32: RegisterTypeLib should register any interface that derives
	from IDispatch rather than just dual interfaces.
	This is hinted at, although not explicitly stated on MSDN, but was
	verified by tests with native oleaut32.

2006-06-28  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/vertexbuffer.c:
	ddraw: Correct a NULL pointer check.

2006-06-28  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/kernel/tests/version.c:
	kernel: Version test was using imports missing on WinME.

2006-06-28  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/quartz/filtergraph.c:
	quartz: Fixed typo (Coverity).

2006-06-27  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/quartz/regsvr.c:
	quartz: Use the return value of register_key_guid.

2006-06-27  Juan Lang <juan_lang@yahoo.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Handle bstr length of -1 in typelibs.

	* dlls/shell32/shell32.spec, dlls/shell32/shellord.c:
	shell32: Add a stub for InvalidateDriveType.

2006-06-27  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/stateblock.c, include/wine/wined3d_interface.h:
	wined3d: Use register combiners for texture stage operations.
	Make wined3d use register combiners for texture stage operations. In
	order to do that the texture unit index needs to be separated from the
	texture stage index. For cards that don't support the
	NV_register_combiners extension nothing should change.

	* dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add code for using register combiners for texture stage operations.
	On nVidia cards the value of GL_MAX_TEXTURE_UNITS is generally not
	larger than 4. In Direct3D that would correspond to
	MaxSimultaneousTextures in the caps, rather than MaxTextureBlendStages
	(which can be much larger) to which it currently corresponds in
	wined3d. Using register combiners we can get around that limitation
	and get up to GL_MAX_GENERAL_COMBINERS_NV (typically 8) texture
	stages. This patch adds code for doing the texture operations with
	register combiners instead of ARB_texture_env_combine or
	NV_texture_env_combine4, but doesn't make use of that code yet. That's
	what the next patch will do.

	* dlls/wined3d/drawprim.c:
	wined3d: Fix uploading of textures for shaders.
	The code for uploading / binding textures for use with pixel shaders
	is slightly different from the one for uploading / binding textures
	for use with the fixed function pipeline. It would be possible to keep
	the code in a single function with a couple of conditionals, but in
	combination with the changes needed for register combiners that would
	become quite messy.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_gl.h:
	wined3d: Texture limits fixes.
	GL_LIMITS(textures) is currently used for both the number of texture
	stages and the maximum number of simultaneous textures. In the current
	code that's the same, but in a later patch that will be separated,
	since a texture stage doesn't have to reference an actual
	texture. Also, shaders can access a larger number of samplers than the
	number of texture units the fixed function pipeline can access.

	* include/wine/wined3d_gl.h:
	wined3d: Add register combiner function pointers.

	* dlls/wined3d/utils.c:
	wined3d: Add & use D3DTEXTUREOP dumping code.

2006-06-27  James Hawkins <truiken@gmail.com>

	* dlls/shlwapi/tests/path.c:
	shlwapi: Add tests for PathAppendA.

2006-06-27  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shlfileop.c:
	shell32: If needed show a confirmation dialog when deleting with SHFileOperation.
	Show a confirmation dialog in SHFileOperationW for the FO_DELETE
	operation when called without FOF_NOCONFIRMATION or with
	FOF_WANTNUKEWARNING. That way the user's files won't be deleted
	without a warning.

2006-06-26  Huw Davies <huw@codeweavers.com>

	* dlls/opengl32/wgl.c:
	opengl32: Fix the returned metrics and add a translation vector to the end of
	each list.

2006-06-27  Alexandre Julliard <julliard@winehq.org>

	* server/context_alpha.c, server/context_i386.c, server/context_powerpc.c,
	  server/context_sparc.c, server/context_x86_64.c, server/ptrace.c,
	  server/thread.h:
	server: Moved get/set_thread_context implementation to ptrace.c.

2006-06-27  Ivan Leo <ivanleo@gmail.com>

	* dlls/msvcrt/tests/file.c:
	msvcrt/tests: Don't leave files on the disk.

2006-06-27  William Knop <william.knop@gmail.com>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Fix for non-elf build (undefined symbol: _elf_is_in_thunk_area).

2006-06-27  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Add tests for IsThemePartDefined.

2006-06-27  Hans Leidekker <hans@it.vu.nl>

	* dlls/userenv/userenv.spec, dlls/userenv/userenv_main.c:
	userenv: Add a stub implementation for GetProfileType.

2006-06-27  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/tests/device.c, dlls/ddraw/vertexbuffer.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/wined3d_private.h:
	wined3d: Vertex buffer can be locked multiple times.

2006-06-27  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Always have a libxml doc associated with a domdoc object, even if the
	object has no nodes.
	This means we don't need to add checks for NULL libxml node ptrs in our node
	implementation.

2006-06-27  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Read the font color from the database, and use it for the text control.

2006-06-26  James Hawkins <truiken@gmail.com>

	* programs/msiexec/Makefile.in, programs/msiexec/msiexec.c:
	msiexec: Use CommandLineToArgvW instead of process_args to reduce code
	duplication.

2006-06-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/critsection.c:
	ntdll: Faster critical sections on MacOS using Mach semaphores.

	* libs/wine/loader.c:
	libwine: Attempt to increase some user limits that are set too low on some
	platforms.

	* configure, configure.ac, include/config.h.in,
	  programs/wineconsole/curses.c:
	wineconsole: Portability fixes in the curses mouse support.

	* tools/widl/widltypes.h:
	widl: Fixed syntax of DECL_LINK macro to look more like C code.

2006-06-21  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/shlwapi/tests/path.c:
	shlwapi: Test for UrlGetPart in case of file name.

2006-06-21  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/path.c, dlls/ntdll/tests/path.c:
	ntdll: Fix 2 failing test on native. Change Wine accordingly.

2006-06-26  Hans Leidekker <hans@it.vu.nl>

	* dlls/shell32/shell.c, dlls/shell32/shell32.spec:
	shell32: Add a stub implementation for SHIsFileAvailableOffline.

2006-06-26  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/info.c:
	winedbg: Module info.
	when requesting info on a module by address, always print the module
	ELF/PE pair (if this applies) (and not only the embedded PE), which
	can be confusing.

	* programs/winedbg/info.c:
	winedbg: Use 64 bit version of imagehlp_module.
	This allows reimplementing the module list command and do less black
	magic to guess the ELF debug format.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/module.c:
	dbghelp: Implemented SymEnumerateModules64.

	* dlls/dbghelp/coff.c, dlls/dbghelp/dbghelp_private.h,
	  dlls/dbghelp/dwarf.c, dlls/dbghelp/elf_module.c,
	  dlls/dbghelp/module.c, dlls/dbghelp/msc.c, dlls/dbghelp/stabs.c:
	dbghelp: Module info.
	- now internally storing module info as a 64bit module structure
	(the interest in not in the 64 bit side of things, but because
	it allows storing lots of usefull information)
	- fixed SymGetModuleInfo64W which wasn't returning the
	LoadedPdbName field
	- now filling for MSC files with the extended information
	(instead of guessing it)
	- reused the extended module info to store wine ELF module
	information (link for map link, stabs vs dwarf symbol info)

2006-06-27  Alexandre Julliard <julliard@winehq.org>

	* programs/winetest/maketest:
	winetest: Portability fix in the maketest script. Added support for git.

2006-06-26  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winex11.drv/window.c:
	winex11.drv: Write-strings warning fix.

2006-06-27  Jason Green <jave27@gmail.com>

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Implement more GLSL instructions and a little cleanup.
	- Implement D3DSIO_DP2ADD, D3DSIO_TEXKILL, D3DSIO_TEXM3X3PAD
	- Partially implement D3DSIO_TEXBEM, D3DSIO_TEXM3X3VSPEC (as much as
	they are implemented in ARB_fragment_program at least).
	- Stop copying the SHADER_PARSE_STATE struct in each ARB shader
	routine - use a pointer instead.

2006-06-27  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Remove some redundant code.

	* dlls/wined3d/device.c, dlls/wined3d/vertexbuffer.c:
	wined3d: Fix compilation (VBO constants).

2006-06-26  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/parser.c, dlls/setupapi/tests/parser.c:
	setupapi: Fix SetupCloseInfFile when a NULL handle is given, with tests.

	* dlls/shlwapi/tests/path.c:
	shlwapi: Add tests for PathAddBackslash.

	* dlls/shlwapi/path.c, dlls/shlwapi/tests/path.c:
	shlwapi: Add tests for PathCombineA.

	* dlls/shdocvw/version.rc:
	shdocvw: Upgrade the version to 5.50.4134.599.

2006-06-26  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/device.c:
	ddraw: Fix some compiler warnings.

	* dlls/ddraw/ddraw.c:
	ddraw: Assign the surface descriptions height to the height.

2006-06-26  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/imagehlp/modify.c:
	imagehlp: Fixed typo (Coverity).

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Add tests for GetCurrentThemeName.

2006-06-22  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Added a bit more functional tests to OpenThemeData.

2006-06-25  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/conpoint.c:
	mshtml: Added Unadvise implementation.

	* dlls/mshtml/conpoint.c, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Destroy connection points.

	* dlls/mshtml/conpoint.c:
	mshtml: Added Advise implementation.

	* dlls/mshtml/nsio.c:
	mshtml: Return text/html by default in GetContentType.

	* dlls/mshtml/nsio.c:
	mshtml: Return NS_OK in GetStatus if channel is NULL.

	* dlls/mshtml/navigate.c:
	mshtml: Call OnStopRequest in OnStopBinding.

	* dlls/mshtml/navigate.c:
	mshtml: Break reading if IStream::Read returns 0 bytes.

2006-06-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/loadopts.c, dlls/mshtml/tests/.gitignore,
	  dlls/mshtml/tests/Makefile.in, dlls/mshtml/tests/misc.c:
	mshtml: Added HTMLLoadOptions implementation (with tests).

2006-06-25  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/mci.c:
	mci: Fix some mciSendString quirks.
	Really check in MCI open string commands if the name we have is a
	device (and no longer rely on bad heuristics for it).

2006-06-24  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/elf_module.c:
	dbghelp: Dwarf & thunks.
	- added the elf_is_in_thunk_area() function to locate an address
	within the known thunk area of Wine's builtin modules
	- now passing this thunk information to the dwarf parser so that it
	can drop functions from the thunk areas (as dwarf symbols), so that
	those functions can be later on marked as thunks in dbghelp
	internals

2006-06-23  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Elf for wine and spec definitions.
	Enhancement over previous fix (we don't need to insert NOTYPE symbols
	in our public symbol table, so drop them as early as possible).

2006-06-25  Andrey Turkin <pancha@Mail.nnov.ru>

	* dlls/msi/install.c, dlls/msi/tests/package.c:
	msi: Disable some path validity checks in MsiSetTargetPath.

2006-06-24  Ivan Leo <ivanleo@gmail.com>

	* dlls/amstream/amstream.c:
	amstream: Implement IAMMultiMediaStreamImpl_OpenFile and
	IAMMultiMediaStreamImpl_OpenMoniker.

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Fix a crash when ConvertSidToStringSidA isn't available.

2006-06-24  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/user/resources/user32_Pl.rc:
	user: user32_Pl.rc: Fix the capitalization of OK.

2006-06-23  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/ntdll/time.c:
	ntdll: Add UZT timezone info.

2006-06-23  Francois Gouget <fgouget@free.fr>

	* dlls/ddraw/clipper.c, dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h,
	  dlls/ddraw/device.c, dlls/ddraw/direct3d.c,
	  dlls/ddraw/executebuffer.c, dlls/ddraw/gamma.c, dlls/ddraw/main.c,
	  dlls/ddraw/surface.c, dlls/ddraw/tests/d3d.c, dlls/ddraw/utils.c,
	  dlls/ddraw/vertexbuffer.c, dlls/ddraw/viewport.c,
	  dlls/shell32/shlfolder.c, dlls/wined3d/device.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/utils.c, programs/winefile/resource.h:
	Assorted spelling, case and grammar fixes.

2006-06-23  Francois Gouget <fgouget@codeweavers.com>

	* dlls/shell32/classes.c, dlls/shell32/shell32_main.h,
	  dlls/shell32/shlexec.c:
	shell32: Fix computation of default verb.
	Compute the default verb as documented on MSDN instead of blindly
	assuming it is 'open'. This fixes the WordViewer association in some
	cases.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Protect pthread.h inclusion.

	* dlls/ddraw/tests/refcount.c:
	ddraw: Fix compilation with gcc 2.95.

	* dlls/crypt32/tests/encode.c:
	crypt32: Fix compilation with gcc 2.95.

2006-06-24  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw.c:
	ddraw: Set the video memory and visible flag on render targets.

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/ddraw/direct3d.c:
	ddraw: Enumerate the reference d3ddevice.

	* dlls/wined3d/surface.c:
	wined3d: Fix single buffering.
	Tell gl to draw to the back buffer when a back buffer is used, do not
	use the value from gl.

	* dlls/wined3d/device.c:
	wined3d: Fix a bad trace.

2006-06-21  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Create vertex buffer objects for D3D vertex buffers.

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Vertex fixups.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_types.h:
	wined3d: Add support for VBOs to the drawing code.

2006-06-23  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/shlwapi/path.c, dlls/shlwapi/tests/path.c:
	shlwapi: PathCombineW should return NULL on invalid parameters.

2006-06-26  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/oleview/Ko.rc, programs/oleview/rsrc.rc:
	oleview: Added Korean resources.

2006-06-24  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/En.rc, programs/oleview/details.c,
	  programs/oleview/interface.c, programs/oleview/main.h,
	  programs/oleview/resource.h, programs/oleview/tree.c:
	oleview: Fix compilation with gcc 2.95.
	- patch based on Francois Gouget Fix compilation with gcc 2.95 patch
	- moved some string to resources
	- fixed implementation of IPersistStream interface viewer

	* programs/oleview/interface.c:
	oleview: Added propper ClassName displaying to interface viewer.

	* programs/oleview/En.rc, programs/oleview/Makefile.in,
	  programs/oleview/interface.c, programs/oleview/main.h,
	  programs/oleview/oleview.c, programs/oleview/resource.h:
	oleview: Added interface viewer.

2006-06-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/surface.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, include/wine/wined3d_interface.h:
	ddraw/wined3d: IDirectDrawSurface7::SetSurfaceDesc corrections.

2006-06-24  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/gdi/tests/metafile.c:
	gdi/tests: Write-strings warnings fix.

2006-06-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* tools/widl/widltypes.h:
	widl: Write-strings warnings fix.

2006-06-23  James Hawkins <truiken@gmail.com>

	* dlls/shell32/brsfolder.c:
	shell32: Add missing multiply by sizeof(WCHAR)l

2006-06-23  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Calculate size of FC_STRUCT arguments correctly.

	* dlls/winex11.drv/init.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Introduce a function to retrieve the glx drawable and have
	both the GET_GLX_DRAWABLE Escape and SwapBuffers call it.

2006-06-23  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/imagehlp/modify.c:
	imagehlp: Fixed typo (Coverity).

2006-06-23  Alexandre Julliard <julliard@winehq.org>

	* server/context_alpha.c, server/context_i386.c, server/context_powerpc.c,
	  server/context_sparc.c, server/context_x86_64.c, server/thread.c,
	  server/thread.h:
	server: Moved some common bits of get/set_thread_context to thread.c.

	* dlls/ntdll/server.c, include/wine/pthread.h, loader/kthread.c,
	  loader/pthread.c:
	libwine: Added entry for sigprocmask in the pthread functions table.

	* loader/pthread.c:
	wine-pthread: Set thread scope to force using kernel threads on Solaris.

2006-06-22  Huw Davies <huw@codeweavers.com>

	* dlls/opengl32/wgl.c:
	opengl32: If there's no glX context don't return a wgl context.

2006-06-22  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/En.rc, programs/oleview/oleview.c,
	  programs/oleview/resource.h:
	oleview: Added system configuration dialog.

	* programs/oleview/En.rc, programs/oleview/oleview.c:
	oleview: Added copy HTML tag functionality.

	* programs/oleview/oleview.c:
	oleview: Added copy CLSID functionality.

	* programs/oleview/En.rc, programs/oleview/main.h,
	  programs/oleview/oleview.c, programs/oleview/resource.h,
	  programs/oleview/tree.c:
	oleview: Added CreateInstanceOn functionality.

2006-06-22  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/Makefile.in, dlls/msi/tests/install.c:
	msi: Add tests for components that aren't associated with a feature.

2006-06-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/loadopts.c, dlls/mshtml/main.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Added stub implementation of HTMLLoadOptions.

	* dlls/mshtml/main.c, dlls/uuid/uuid.c, include/.gitignore,
	  include/Makefile.in, include/optary.idl:
	mshtml: Added optary.idl file.

	* dlls/mshtml/nsio.c:
	mshtml: Inherit NSContainer in NewURI.

	* dlls/mshtml/conpoint.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Fix a typo.

	* dlls/mshtml/olecmd.c:
	mshtml: Added CGID_MSHTML to IOleCommandTarget::Exec.

2006-06-23  Juan Lang <juan_lang@yahoo.com>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt.c:
	advapi: Add a stub for SystemFunction035.

	* dlls/kernel/tests/locale.c:
	kernel: Change failing to test to show it doesn't have anything to do
	with embedded NULLs.

2006-06-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/secur32/ntlm.c:
	secur32: Write-strings warnings fix.

	* dlls/ole32/tests/stg_prop.c:
	ole32/tests: Write-strings warning fix.

2006-06-22  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Warp mouse each 10ms instead of dropping events.

2006-06-22  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Destroy the windows after we've used them.

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Add a case sensitivity test.

2006-06-22  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/oleview/En.rc:
	oleview: Spelling fixes (English).

	* programs/oleview/Fr.rc, programs/oleview/rsrc.rc:
	oleview: French localization.

2006-06-22  Huw Davies <huw@codeweavers.com>

	* dlls/winex11.drv/opengl.c:
	winex11: glXQueryExtension has its error and event base arguments swapped
	compared with other *QueryExtension functions!

2006-06-22  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/details.c, programs/oleview/main.h,
	  programs/oleview/tree.c:
	oleview: Removed use of strlenW, strcmpW and strcpyW functions.

2006-06-22  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Send pkg-config error messages to /dev/null.

2006-06-22  Krzysztof Foltman <wdev@foltman.com>

	* dlls/riched20/editor.c:
	riched20: Fix message range for get_msg_name.

2006-06-21  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crl.c, dlls/crypt32/crypt32.spec, dlls/crypt32/tests/crl.c,
	  include/wincrypt.h:
	crypt32: Implement CertGetCRLFromStore.
	- implement CertGetCRLFromStore, with tests
	- update tests for CRL revocation functions to show name isn't checked

	* dlls/oleaut32/tests/vartype.c, dlls/oleaut32/vartype.c:
	oleaut32: Correctly handle NULLs embedded in BSTRs, with tests.

	* dlls/kernel/tests/locale.c, libs/unicode/sortkey.c:
	kernel: Use the WinXP method for comparing strings with embedded NULLs. Update
	tests.

2006-06-21  Ivan Leo <ivanleo@gmail.com>

	* dlls/quartz/filesource.c:
	quartz: Fix media type detection.

2006-06-21  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Elf for wine and spec definitions.
	- fixed regression when looking for winebuild's special symbols in ELF symtab
	- STT_NOTYPE is still accepted as a valid symbol type (on top of STT_FUNC
	and STT_OBJECT)

2006-06-21  Detlef Riekenberg <wine.dev@web.de>

	* Makefile.in:
	Makefile.in: Add target "ctags" to the overview.

	* DEVELOPERS-HINTS:
	DEVELOPER-HINTS: Some directories where added / renamed.

2006-06-21  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Only test the needed functions once, bail out if one is missing.

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Add some tests for GetWindowTheme.

2006-06-21  James Hawkins <truiken@gmail.com>

	* dlls/atl/atl.spec, dlls/atl/atl_main.c:
	atl: Add a stub implementation of AtlModuleLoadTypeLib.

	* dlls/mapi32/mapi32.spec, dlls/mapi32/mapi32_main.c:
	mapi32: Add a stub implementation of MAPIOpenLocalFormContainer.

2006-06-21  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/device.c:
	ddraw: Use the handle infrastructure for Matrix handles.

2006-06-21  Alexandre Julliard <julliard@winehq.org>

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

----------------------------------------------------------------
2006-06-21  Alexandre Julliard <julliard@winehq.org>

	* programs/oleview/.gitignore, programs/oleview/oleview:
	oleview: Delete the symlink from git.

	* AUTHORS, dlls/shell32/shell32_main.c:
	Updated the AUTHORS list and converted it to utf-8.

2006-06-15  Francois Gouget <fgouget@codeweavers.com>

	* tools/mkinstalldirs:
	tools: Fix mkinstalldirs.
	We cannot trust 'mkdir -p' to set the proper permissions on parent
	directories. So create them manually.
	Fix handling of paths containing spaces.
	Properly prefix the path with './' if it starts with a '-'.
	Stop trying to create a path after the first error.

2006-06-21  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Extra testing for GetLastError.

2006-06-21  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/msvcrt/tests/string.c:
	msvcrt: Add simple test for _strdup(0).

	* dlls/msvcrt/string.c:
	msvcrt: Fix a crash in _strdup.

2006-06-20  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c:
	msi: Fix handling of the no-op identifier in the Directory table.

2006-06-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ntdll/server.c:
	ntdll: Write-strings warnings fix.

2006-06-16  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c, dlls/winspool.drv/tests/info.c:
	winspool/tests: Tests for EnumForms and set an error value in our stub.

2006-06-13  Andrew Ziem <ahziem1@mailbolt.com>

	* dlls/msvcrt/data.c, dlls/msvcrt/tests/.gitignore,
	  dlls/msvcrt/tests/Makefile.in, dlls/msvcrt/tests/data.c:
	msvcrt: Fix _initterm, with tests.

2006-06-11  Simon Kissane <skissane@gmail.com>

	* dlls/kernel/kernel32.spec, dlls/kernel/locale.c:
	kernel32: Added SetThreadUILanguage() stub.

2006-06-21  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Stubs for RpcRevertToSelf and RpcMgmtSetComTimeout.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Add stub for RpcMgmtEnableIdleCleanup.

2006-06-21  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/utils.c,
	  dlls/wined3d/volume.c, dlls/wined3d/wined3d_private.h:
	wined3d: Pixel format cleanup.

2006-06-20  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/gdi/enhmetafile.c, dlls/gdi/tests/metafile.c:
	gdi32: SetWinMetaFileBits: Use the whole device surface if the METAFILEPICT
	parameter is NULL.
	Also use the whole device surface if one of the extents is zero or
	negative and the mapping mode is MM_ANISOTROPIC or MM_ISOTROPIC.
	New tests.

2006-06-19  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: An empty string as server name is valid for AddPrinterDriver.

2006-06-14  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/details.c:
	oleview: Added registry tab in details window.

	* programs/oleview/En.rc, programs/oleview/Makefile.in,
	  programs/oleview/details.c, programs/oleview/main.h,
	  programs/oleview/oleview.c, programs/oleview/resource.h,
	  programs/oleview/tree.c:
	oleview: Added details window base.

	* programs/oleview/En.rc, programs/oleview/main.h,
	  programs/oleview/oleview.c, programs/oleview/resource.h,
	  programs/oleview/tree.c:
	oleview: Added base menu funcionality.

	* programs/oleview/En.rc, programs/oleview/main.h,
	  programs/oleview/oleview.c, programs/oleview/resource.h,
	  programs/oleview/tree.c:
	oleview: Added more TreeView entries.

	* programs/oleview/tree.c:
	oleview: Added TreeView entries read from registry.

	* programs/oleview/En.rc, programs/oleview/Makefile.in,
	  programs/oleview/main.h, programs/oleview/oleview.c,
	  programs/oleview/resource.h, programs/oleview/tree.c:
	oleview: Added TreeView window.

	* programs/oleview/Makefile.in, programs/oleview/main.h,
	  programs/oleview/oleview.c, programs/oleview/pane.c:
	oleview: Added pane bar.

	* configure, configure.ac, programs/Makefile.in,
	  programs/oleview/.gitignore, programs/oleview/En.rc,
	  programs/oleview/Makefile.in, programs/oleview/main.h,
	  programs/oleview/oleview, programs/oleview/oleview.c,
	  programs/oleview/resource.h, programs/oleview/rsrc.rc:
	oleview: Added initial version.

2006-06-21  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/wined3d/surface_gdi.c:
	wined3d: Add an "\n" to a fixme to fix an overflow.

2006-06-20  Jason Green <jave27@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Bind correct number of samplers for GLSL shaders.
	We are only checking against GL_MAX_TEXTURES when binding samplers,
	when we should be checking against the maximum number of samplers that
	the card supports.  Spotted by H. Verbeet.

2006-06-20  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crl.c, dlls/crypt32/crypt32.spec, dlls/crypt32/tests/crl.c:
	crypt32: Implement some CRL verification functions.

	* dlls/crypt32/main.c, include/wincrypt.h:
	wincrypt.h: Add more definitions and prototypes.

2006-06-20  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wininet/tests/url.c:
	wininet/tests: Write-strings warnings fix.

2006-06-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/winpos.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Add support for full screen window state using the NETWM protocol.

2006-06-20  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c:
	advpack: Implement DoInfInstall on top of the install framework.

2006-06-21  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/kernel/tests/file.c:
	kernel: Add tests for OpenFile.

	* dlls/kernel/tests/file.c:
	kernel: Check for an exe which is always present in a system dir.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32: Small test fixes.

2006-06-20  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shlfileop.c:
	shell32: Fix the nBufferMax param of LoadStringW calls from SHELL_ConfirmDialogW.

2006-06-20  Detlef Riekenberg <wine.dev@web.de>

	* tools/winedump/output.c:
	winedump: Add DLL_WINE_PREATTACH to the generated DllMain.

	* tools/winedump/output.c:
	winedump: Use ntdll as template.

	* configure, configure.ac, dlls/Makefile.in, dlls/compstui/.gitignore,
	  dlls/compstui/Makefile.in, dlls/compstui/compstui.spec,
	  dlls/compstui/compstui_main.c:
	compstui: Add minimal compstui.dll (stubs only).

2006-06-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdll/virtual.c:
	ntdll: Compile VIRTUAL_Dump only when somebody really needs it.

2006-06-20  Vitaly Lipatov <lav@etersoft.ru>

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

2006-06-20  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/umon.c:
	urlmon: Call Binding_CloseCacheDownload after Binding_FinishedDownload.

	* dlls/shdocvw/persist.c:
	shdocvw: Return S_OK in IPersistStreamInit::InitNew.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/olecmd.c,
	  dlls/mshtml/oleobj.c:
	mshtml: Move IOleCommandTarget implementation to separate file.

	* dlls/mshtml/persist.c:
	mshtml: Initialize url variable in IPersistMoniker::Load.

	* dlls/mshtml/nsio.c:
	mshtml: Don't crash in GetSecurityInfo if channel is NULL.

	* dlls/mshtml/conpoint.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added IPropertyNotifySink connection point.

2006-06-20  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/.gitignore, dlls/crypt32/tests/Makefile.in,
	  dlls/crypt32/tests/cert.c, dlls/crypt32/tests/crl.c,
	  dlls/crypt32/tests/store.c:
	crypt32: Rearrange functions a bit.

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Small cleanups.
	- forward MLGetUILanguage to kernel32
	- correct type of parameter to MLLoadLibrary

2006-06-20  Paul Vriens <Paul.Vriens@xs4all.nl>

	* programs/winecfg/theme.c:
	winecfg: Create Resources directory when adding themes.

2006-06-20  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Don't use a short to hold the packet length, since it can
	result in premature termination of the send.

2006-06-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/tape.c:
	ntdll: Fixed tape.c compilation on Solaris.

	* libs/wine/mmap.c:
	libwine: Better memory reservation algorithm for platforms that use
	try_mmap_fixed.

	* configure, configure.ac:
	configure: Default to using wine-pthread on all platforms.

2006-06-20  Jeremy White <jwhite@codeweavers.com>

	* configure, configure.ac:
	configure: Probe more carefully for soname support, primarily for Solaris
	support.

2006-06-18  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dwarf.c:
	dbghelp: dwarf: Tidy up leb128 reading.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Indent the code as the rest of dbghelp module.

	* dlls/dbghelp/elf_module.c:
	dbghelp: Support multiple debug formats.
	When several debug formats (eg stabs & dwarf2) exist in the same
	module, allow to load them all (this is needed when different
	compilation units are compiled with different debug options).

	* dlls/dbghelp/dwarf.c:
	dbghelp: dwarf: Generate the current source file and store it in dbghelp's
	internals.

	* dlls/dbghelp/coff.c, dlls/dbghelp/dbghelp_private.h,
	  dlls/dbghelp/dwarf.c, dlls/dbghelp/elf_module.c, dlls/dbghelp/msc.c,
	  dlls/dbghelp/source.c, dlls/dbghelp/stabs.c, dlls/dbghelp/symbol.c:
	dbghelp: Added the ability to define a source file by dir+filename instead of
	only filename.

	* dlls/dbghelp/dwarf.c, dlls/dbghelp/dwarf.h:
	dbghelp: dwarf: Started parsing the attributes for lines (in compilation unit).
	Walking the whole lot, not doing anything interesting apart from
	traversing the data.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/elf_module.c:
	dbghelp: Pass .debug_loc section information to dwarf.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & parse context.
	- split the data structures for walking through the data (abbrev,
	cu... -> traverse_ctx) and data manipulation/loading (-> parse_ctx)
	- created dwarf2_parse_compilation_unit() for clarity
	- added section structure to gather information about all ELF sections
	related to all dwarf2 sections (more to come)

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & udt members.
	- correctly set size & offsets for regular udt members
	- first shot at bitfields for udt members

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & function blocks.
	- properly handling function blocks
	- handling of variables inside of blocks (either on stack, or in a
	register, or relative to the frame register if any)
	- added dwarf2_subprogram_t structure so that we can pass around
	relevant information for function parsing

	* dlls/dbghelp/dwarf.c:
	dbghelp: dwarf: Properly handle function formal parameters.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/msc.c,
	  dlls/dbghelp/stabs.c, dlls/dbghelp/symbol.c:
	dbghelp: Storage of func locals & parameters.
	- added the ability to tell to add_func_local whether we're adding
	a local variable or a parameter (and removed the black magic
	we were using)
	- we can now address variables defined as an offset to a register

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & global symbols.
	Offset the addresses for global symbols (func & variables) by the base
	image of the corresponding module.

	* dlls/dbghelp/dwarf.c:
	dbghelp: dwarf: Added support for function labels.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Proper support for nested types definitions (even in C).

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf - function scheme.
	- various fixes to follow better the functions definition (nesting,
	subroutines...)
	- don't directly parse types referenced by a subprogram, they'll be
	loaded anyway when needed

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & locations.
	- put back the block attribute parsing
	- added dwarf2_compute_location to properly decode a location (at
	least starting it)

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf compiland.
	- rewrote all entities loading to make use of new dwarf2_debug_info_t scheme
	- commented out the location parsing which is an ugly hack

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & new scheme.
	- add some helpers for the rewrite
	- module is now part of the dwarf2_parse_context

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & type references.
	Removed unused type references scheme that we'll implement using a
	different scheme in next patches.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf merge parsing of UDT.
	Merge into a single function the struct/class/union parsing.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & debug info entries.
	- now loading the debug info entries into specific structures
	- this will help writing new functions
	- this will allow handling of forward references

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf abbrev table is now a sparse array.
	- added a pool for memory allocation when parsing a compilation unit
	- now using the brand new sparse array for the abbrev table

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/storage.c:
	dbghelp: Added another basic type for storage: the sparse array.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Transform a few TRACEs into WARNs (especially for unhandled stuff).

	* dlls/dbghelp/dwarf.c:
	dbghelp: Remove the unneeded level attribute while parsing.

	* dlls/dbghelp/dwarf.c, dlls/dbghelp/dwarf.h:
	dbghelp: Moved all Dwarf standard definitions into dwarf.h file.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & typedefs.
	- removed lookup for name for the const modifier
	- hard wire dwarf-reference to our pointer types

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & module's symtype.
	- we should set the module's symtype upon success
	- removed unneeded bRet variable

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf2 & AT_byte_size.
	- AT_byte_size can be larger than a single byte (especially for enums)
	- added missing enumeration type parsing

	* programs/winedbg/debugger.h, programs/winedbg/memory.c,
	  programs/winedbg/types.c:
	winedbg: Proper handling of typedefs.
	Added types_get_real_type() to get rid of typedef information, and
	access the real underlying type.

2006-06-19  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Encode/decode CRL issuing dist points.

2006-06-19  Jason Green <jave27@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c:
	wined3d: Move D3DSIO_DEF instruction for ARB shaders into arb_program_shader.c.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix DEF instructions in GLSL for non-Nvidia platforms.
	- NVidia allows "const vec4 = {1.0, 2.0, 3.0, 4.0};", even though
	that's not part of the spec.
	- It should be	"const vec4 = vecr4(1.0, 2.0, 3.0, 4.0);"
	- This patch fixes this for D3DSIO_DEF and D3DSIO_DEFI.

2006-06-20  James Hawkins <truiken@gmail.com>

	* tools/wine.inf:
	tools/wine.inf: Add d3d8.dll to the fake dlls list.

2006-06-20  Ge van Geldorp <ge@gse.nl>

	* dlls/kernel/global16.c:
	kernel32: "base" is a pointer in 16-bit global heap.

	* programs/winedbg/Makefile.in, programs/winedbg/be_x86_64.c,
	  programs/winedbg/gdbproxy.c, programs/winedbg/winedbg.c:
	winedbg: Added x86_64 support.

2006-06-20  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shlfileop.c:
	shell32: Remove the now unused SHELL_ConfirmDialog.

	* dlls/shell32/shell32_main.h, dlls/shell32/shfldr_fs.c:
	shell32: Use SHELL_ConfirmDialogW when deleting multiple files.

2006-06-20  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/lz32/tests/lzexpand_main.c:
	lz32: Remove dead code from the LZOpenFileW test.

2006-06-19  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shell32_Pl.rc:
	shell32: Update the Polish translation.

2006-06-19  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crl.c:
	crypt32: Simplify CRL creation.
	Decoding already handles signed and unsigned CRLs, so don't duplicate
	that in CertCreateCRLContext.

	* dlls/crypt32/cert.c:
	crypt32: Simplify certificate creation.
	Decoding already handles signed and unsigned certs, so don't duplicate
	that in CertCreateCertificateContext.

2006-06-19  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/lz32/tests/lzexpand_main.c:
	lz32: test LZOpenFileW.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32: LZOpenFileA sets last error sometimes.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32: Rename function aliases to real (ASCII) function names.

2006-06-19  Robert Shearman <rob@codeweavers.com>

	* dlls/shell32/shfldr_desktop.c:
	shell32: Convert ISF_Desktop_fnGetDisplayNameOf to Unicode.

	* dlls/shell32/shfldr_mycomp.c:
	shell32: Convert ISF_MyComputer_fnGetDisplayNameOf to Unicode.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Move the packet manipulation from the exception filter to the exception
	handler.
	Remove the unused server_sem variable.

2006-06-19  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/decode.c, dlls/crypt32/tests/encode.c:
	crypt32: Fix decoding signed certs and CRLs.

2006-06-19  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Added test for IsAppThemed and grouped it with IsThemeActive.

2006-06-20  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/stg_prop.c:
	ole32: Implement reading of VT_CF storage properties.

2006-06-19  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/config.c:
	libwine: Remove one more directory level when checking for build dir.
	This way it still works if the libdir we got was libs/wine instead of libs.

2006-06-19  Jeremy White <jwhite@codeweavers.com>

	* dlls/msvcrt/time.c:
	msvcrt: Solaris asctime_r compilation fix.

	* dlls/dbghelp/elf_module.c:
	dbghelp: Fix a Solaris compilation error.

	* dlls/winex11.drv/winpos.c:
	winex11.drv: On Solaris, Xutil.h is required to define XRegion.

	* dlls/ntdll/directory.c:
	ntdll: On Solaris, limits.h is required for PATH_MAX.

2006-06-19  Ge van Geldorp <ge@gse.nl>

	* dlls/dbghelp/minidump.c:
	dbghelp: Fix compilation for x86_64.

2006-06-19  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/secur32/schannel.c, include/sspi.h:
	include: Fix definition of SECURITY_INTEGER.

2006-06-19  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/build.h, tools/winebuild/main.c,
	  tools/winebuild/relay.c:
	winebuild: Get rid of the data16 prefix, it shouldn't be needed anymore and
	causes warnings.

2006-06-13  Christian Gmeiner <christian.gmeiner@students.fhv.at>

	* dlls/setupapi/Makefile.in, dlls/setupapi/devinst.c,
	  dlls/setupapi/tests/.gitignore, dlls/setupapi/tests/Makefile.in,
	  dlls/setupapi/tests/devinst.c:
	setupapi: Implement SetupDiCreateDeviceInfoListExW.

2006-06-19  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Change S_OK to the more appropriate ERROR_SUCCESS.

2006-06-19  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/dnsapi/name.c:
	dnsapi: Fix conflicts nameser.h with winerror.h.

2006-06-19  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/secur32/ntlm.c:
	secur32: Fix another GetProcessHeap vs GetProcessHeap().

2006-06-19  Hans Leidekker <hans@it.vu.nl>

	* dlls/mscms/profile.c:
	mscms: Fix famous typo in HeapFree call.

2006-06-19  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/negotiate.c:
	secur32: Remove unneeded function from the Negotiate provider.

2006-06-20  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/ole2.c:
	ole32: Fix a typo.

2006-06-19  Mike McCormack <mike@codeweavers.com>

	* dlls/hlink/hlink.spec, dlls/hlink/hlink_main.c:
	hlink: Add a stub implementation for HlinkNavigateToStringReference.

	* dlls/imm32/imm.c:
	imm32: Fix some return codes.

	* dlls/wininet/urlcache.c:
	wininet: Make sure to null terminate a string before copying it.

2006-06-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi/dib.c, dlls/gdi/gdi32.spec:
	gdi32: Get rid of the no longer needed DIB_CreateDIBSection export.

2006-06-19  Detlef Riekenberg <wine.dev@web.de>

	* include/ddk/compstui.h:
	include: Declare remaining exported functions in compstui.h.

2006-06-16  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/device.c, dlls/ddraw/direct3d.c,
	  dlls/ddraw/material.c, dlls/ddraw/surface.c, dlls/ddraw/texture.c,
	  dlls/ddraw/viewport.c:
	ddraw: Implement proper handle management.

2006-06-16  Jason Green <jave27@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Correct implementation of D3DSIO_LOOP.
	I initially misread the specification.	src0.x is the iteration count,
	not the max amount for the loop register.  This fixes that.

	* dlls/wined3d/baseshader.c:
	wined3d: Fix lookup for LOOP register.

2006-06-17  Jason Green <jave27@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Added correct cast support for gl_FogFragCoord and gl_PointSize
	output registers.

2006-06-16  Jason Green <jave27@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Load boolean and integer constants into the GLSL shader program.

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Implement locally defined boolean and integer constants in GLSL.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add preliminary support for constant boolean and integer registers
	in GLSL.
	- Separate the declaration phase of the shader string generator into
	the arb and glsl specific files.
	- Add declarations and recognition for application-sent constant
	integers and booleans (locally defined ones will follow).
	- Standardize capitilization of pixel/vertex specific variable names.

	* dlls/wined3d/Makefile.in, dlls/wined3d/arb_program_shader.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move constant loading into target-specific files.
	- Moves GLSL constant loading code into glsl_shader.c and out of the
	over-populated drawprim.c.
	- Creates a new file named arb_program_shader.c which will hold code
	specific to ARB_vertex_program & ARB_fragment_program.
	- Remove the constant loading calls from drawprim.c

	* dlls/wined3d/vertexshader.c:
	wined3d: Remove dead vertex shader code.

2006-06-18  Krzysztof Foltman <wdev@foltman.com>

	* dlls/riched20/caret.c:
	riched20: EM_CHARFROMPOS didn't work properly with scrolling
	(vertical scrollbar position was not taken into account).

2006-06-17  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/query.c:
	dnsapi: Free all allocated records instead of just the last one.

	* dlls/dnsapi/query.c:
	dnsapi: Correct testing for zero option value DNS_QUERY_STANDARD.

2006-06-17  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw.c, dlls/ddraw/palette.c, dlls/ddraw/surface.c,
	  dlls/ddraw/tests/.gitignore, dlls/ddraw/tests/Makefile.in,
	  dlls/ddraw/tests/refcount.c:
	ddraw: Palette refcounting fixes + tests.

2006-06-17  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/om.c:
	ntdll: If ObjectAttributes is NULL then an error is returned at the
	start of the NtOpenSymbolicLinkObject, therefore ObjectAttributes does
	not need to be checked for NULL later on in the function.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Use the thread pool in the RPC server for processing packets.

	* dlls/ole32/ftmarshal.c:
	ole32: Document CoCreateFreeThreadedMarshaler.

	* dlls/ole32/rpc.c:
	ole32: Reuse event handles used for COM calls.
	This reduces the number of server calls during a COM call by half.

2006-06-18  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* tools/widl/client.c, tools/widl/server.c:
	widl: Fix updating the proc offset.

2006-06-17  Fatih Aşıcı <fatih.asici@gmail.com>

	* programs/winecfg/Tr.rc:
	winecfg: Update Turkish resorce file.

2006-06-16  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/lz32/tests/lzexpand_main.c:
	lz32: Enable old test and expand it.

2006-06-17  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/kernel/cpu.c:
	kernel: Fix reported address space limit to be in keeping with ntdll.

2006-06-16  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: AddMonitor: Test the driver entry before return an error.

2006-06-16  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/tests/db.c, dlls/msi/tests/package.c:
	msi/tests: Write-strings warnings fixes.

2006-06-15  Kevin Koltzau <kevin@plop.org>

	* dlls/oleaut32/tests/safearray.c, dlls/oleaut32/tests/usrmarshal.c,
	  dlls/oleaut32/tests/vartest.c, dlls/oleaut32/tests/vartype.c:
	oleaut32: Fix 64bit warnings in tests.

	* dlls/mscms/handle.c:
	mscms: Fix 64bit warnings.

2006-06-16  András Kovács <andras@csevego.net>

	* programs/uninstaller/Hu.rc, programs/uninstaller/rsrc.rc:
	uninstaller: Hungarian translation.

2006-06-16  Scott Bambrough <scottb@xandros.com>

	* configure, configure.ac:
	configure: Test for additional ICU libraries /usr/lib/libicuuc.a and
	/usr/lib/libicudata.a.

2006-06-16  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, dlls/Makefile.in, dlls/inseng/.gitignore,
	  dlls/inseng/Makefile.in, dlls/inseng/inseng.spec,
	  dlls/inseng/inseng_main.c, tools/wine.inf:
	inseng: Initial implementation of inseng (required for IE6 to install under
	win2k).

2006-06-14  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/En.rc, dlls/mshtml/Makefile.in, dlls/mshtml/install.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/resource.h, dlls/mshtml/rsrc.rc,
	  dlls/mshtml/tests/Makefile.in, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added Wine Gecko installer.

2006-06-16  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wined3d/device.c:
	wined3d: GetScissorRect should use zero-based scissorBox (Coverity).

2006-06-16  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Fix the argument size of conformant arrays.

2006-06-16  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/msi/tests/package.c:
	msi: Added tests for MsiSetTargetPath.

2006-06-15  Francois Gouget <fgouget@free.fr>

	* dlls/d3d9/tests/stateblock.c, dlls/riched20/tests/editor.c,
	  dlls/uxtheme/tests/system.c, dlls/wined3d/device.c,
	  programs/cmdlgtst/cmdlgtst.c:
	Add trailing '\n's to ok() calls.
	Remove spaces before '\n'.

	* dlls/comctl32/tests/header.c, dlls/d3d9/tests/device.c,
	  dlls/riched20/editor.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/glsl_shader.c, server/token.c:
	Assorted spelling fixes.

2006-06-15  Francois Gouget <fgouget@codeweavers.com>

	* dlls/shell32/shlexec.c:
	shell32: Remove dead code in SHELL_FindExecutable().

	* dlls/ntdll/virtual.c:
	ntdll: Use page_size instead of page_mask+1.

2006-06-16  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/main.c:
	secur32: Implement QueryContextAttributes. Add tests.

2006-06-15  Marcus Meissner <marcus@jet.franken.de>

	* dlls/avifil32/api.c:
	avifil32: Corrected destination size in MultiByteToWideChar.

2006-06-15  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/d3d9/d3d9.spec, dlls/d3d9/d3d9_main.c:
	d3d9: Remove ValidatePixel/VertexShader.

2006-06-15  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Correct CRL tests, and fix CRL encoding/decoding accordingly.

2006-06-15  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/hlink/hlink_main.c:
	hlink: Fix typo. We should set hl not ppvObj.

2006-06-16  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  include/wine/wined3d_gl.h:
	wined3d: Add and use GL_EXT_fog_coord defines.

2006-06-16  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/Makefile.in, dlls/make_dlls,
	  dlls/winex11.drv/.gitignore, dlls/winex11.drv/Makefile.in,
	  dlls/winex11.drv/bitblt.c, dlls/winex11.drv/bitmap.c,
	  dlls/winex11.drv/brush.c, dlls/winex11.drv/clipboard.c,
	  dlls/winex11.drv/clipping.c, dlls/winex11.drv/codepage.c,
	  dlls/winex11.drv/dce.c, dlls/winex11.drv/desktop.c,
	  dlls/winex11.drv/dga2.c, dlls/winex11.drv/dga2.h,
	  dlls/winex11.drv/dib.c, dlls/winex11.drv/dib_convert.c,
	  dlls/winex11.drv/dib_dst_swap.c, dlls/winex11.drv/dib_src_swap.c,
	  dlls/winex11.drv/event.c, dlls/winex11.drv/graphics.c,
	  dlls/winex11.drv/init.c, dlls/winex11.drv/keyboard.c,
	  dlls/winex11.drv/mouse.c, dlls/winex11.drv/mwm.h,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/palette.c,
	  dlls/winex11.drv/pen.c, dlls/winex11.drv/scroll.c,
	  dlls/winex11.drv/settings.c, dlls/winex11.drv/text.c,
	  dlls/winex11.drv/window.c, dlls/winex11.drv/winex11.drv.spec,
	  dlls/winex11.drv/winpos.c, dlls/winex11.drv/wintab.c,
	  dlls/winex11.drv/x11ddraw.c, dlls/winex11.drv/x11ddraw.h,
	  dlls/winex11.drv/x11drv.h, dlls/winex11.drv/x11drv_main.c,
	  dlls/winex11.drv/x11font.h, dlls/winex11.drv/xdnd.c,
	  dlls/winex11.drv/xfont.c, dlls/winex11.drv/xim.c,
	  dlls/winex11.drv/xrandr.c, dlls/winex11.drv/xrandr.h,
	  dlls/winex11.drv/xrender.c, dlls/winex11.drv/xvidmode.c,
	  dlls/winex11.drv/xvidmode.h, dlls/x11drv/.gitignore,
	  dlls/x11drv/Makefile.in, dlls/x11drv/bitblt.c, dlls/x11drv/bitmap.c,
	  dlls/x11drv/brush.c, dlls/x11drv/clipboard.c, dlls/x11drv/clipping.c,
	  dlls/x11drv/codepage.c, dlls/x11drv/dce.c, dlls/x11drv/desktop.c,
	  dlls/x11drv/dga2.c, dlls/x11drv/dga2.h, dlls/x11drv/dib.c,
	  dlls/x11drv/dib_convert.c, dlls/x11drv/dib_dst_swap.c,
	  dlls/x11drv/dib_src_swap.c, dlls/x11drv/event.c,
	  dlls/x11drv/graphics.c, dlls/x11drv/init.c, dlls/x11drv/keyboard.c,
	  dlls/x11drv/mouse.c, dlls/x11drv/mwm.h, dlls/x11drv/opengl.c,
	  dlls/x11drv/palette.c, dlls/x11drv/pen.c, dlls/x11drv/scroll.c,
	  dlls/x11drv/settings.c, dlls/x11drv/text.c, dlls/x11drv/window.c,
	  dlls/x11drv/winex11.drv.spec, dlls/x11drv/winpos.c,
	  dlls/x11drv/wintab.c, dlls/x11drv/x11ddraw.c, dlls/x11drv/x11ddraw.h,
	  dlls/x11drv/x11drv.h, dlls/x11drv/x11drv_main.c,
	  dlls/x11drv/x11font.h, dlls/x11drv/xdnd.c, dlls/x11drv/xfont.c,
	  dlls/x11drv/xim.c, dlls/x11drv/xrandr.c, dlls/x11drv/xrandr.h,
	  dlls/x11drv/xrender.c, dlls/x11drv/xvidmode.c,
	  dlls/x11drv/xvidmode.h:
	x11drv: Renamed the x11drv directory to winex11.drv.

2006-06-15  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/notepad/Pl.rc:
	notepad: Pl.rc: Fix the ellipsis in menu.

2006-06-15  Huw Davies <huw@codeweavers.com>

	* dlls/wineps.drv/init.c, dlls/winspool.drv/info.c:
	printing: Don't limit the printer name length to CCHDEVICENAME characters.

2006-06-15  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/.gitignore, dlls/msi/tests/Makefile.in,
	  dlls/msi/tests/install.c:
	msi: Add tests for MsiInstallProduct.

2006-06-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/ddraw/ddraw.c, dlls/ddraw/main.c, dlls/ddraw/material.c,
	  dlls/ddraw/surface.c, dlls/ddraw/vertexbuffer.c,
	  dlls/ddraw/viewport.c:
	ddraw: Make some functions static.

	* configure, configure.ac:
	configure: Ues the standard AC_MSG_WARN to print warnings.

	* dlls/Makefile.in, dlls/make_dlls, programs/winetest/Makefile.in:
	dlls: d3d8, d3d9 and ddraw no longer depend on OpenGL or X.

	* dlls/d3dx8/Makefile.in:
	d3dx8: Remove dependencies on OpenGL headers and libraries.

	* dlls/d3d9/Makefile.in, dlls/d3d9/d3d9_private.h:
	d3d9: Remove dependencies on OpenGL headers and libraries.

	* dlls/d3d8/Makefile.in, dlls/d3d8/d3d8_private.h:
	d3d8: Remove dependencies on OpenGL headers and libraries.

2006-06-15  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/tests/device.c, dlls/d3d9/tests/device.c,
	  dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/surface.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Support more than one back buffer.

2006-06-09  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/Makefile.in, dlls/ddraw/clipper.c, dlls/ddraw/d3d_private.h,
	  dlls/ddraw/d3d_utils.c, dlls/ddraw/ddraw.c, dlls/ddraw/ddraw.spec,
	  dlls/ddraw/ddraw_hal.c, dlls/ddraw/ddraw_main.c,
	  dlls/ddraw/ddraw_private.h, dlls/ddraw/ddraw_thunks.c,
	  dlls/ddraw/ddraw_user.c, dlls/ddraw/ddraw_utils.c,
	  dlls/ddraw/device.c, dlls/ddraw/device_main.c,
	  dlls/ddraw/device_opengl.c, dlls/ddraw/direct3d.c,
	  dlls/ddraw/direct3d_main.c, dlls/ddraw/direct3d_opengl.c,
	  dlls/ddraw/executebuffer.c, dlls/ddraw/gamma.c, dlls/ddraw/gl_api.h,
	  dlls/ddraw/gl_private.h, dlls/ddraw/light.c, dlls/ddraw/main.c,
	  dlls/ddraw/material.c, dlls/ddraw/opengl_private.h,
	  dlls/ddraw/opengl_utils.c, dlls/ddraw/palette.c,
	  dlls/ddraw/palette_hal.c, dlls/ddraw/palette_main.c,
	  dlls/ddraw/parent.c, dlls/ddraw/surface.c, dlls/ddraw/surface_dib.c,
	  dlls/ddraw/surface_fakezbuffer.c, dlls/ddraw/surface_gamma.c,
	  dlls/ddraw/surface_hal.c, dlls/ddraw/surface_main.c,
	  dlls/ddraw/surface_thunks.c, dlls/ddraw/surface_user.c,
	  dlls/ddraw/surface_wndproc.c, dlls/ddraw/tests/d3d.c,
	  dlls/ddraw/texture.c, dlls/ddraw/utils.c, dlls/ddraw/vertexbuffer.c,
	  dlls/ddraw/viewport.c:
	ddraw: Rewrite most of ddraw using WineD3D.

2006-06-15  Alexandre Julliard <julliard@winehq.org>

	* server/fd.c:
	server: Fixed a compiler warning on MacOSX.

	* libs/wine/config.c:
	libwine: Fixed a compiler warning on MacOSX.

2006-06-12  Peter Åstrand <astrand@cendio.se>

	* dlls/winmm/mci.c:
	winmm: Add support for "open new" commands.

2006-06-14  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Add test for _Streams table (based on patch by Andrey Turkin).

2006-06-12  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  include/wine/wined3d_gl.h:
	wined3d: Correct vertex fog for transformed vertices and correctly
	handle non-vertex, non-table fog.

2006-06-13  Jason Green <jave27@gmail.com>

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement more GLSL instructions.
	- Implemented: D3DSIO_SGN, LOOP, ENDLOOP, LOGP, LIT, DST, SINCOS
	- Process instruction-based modifiers (function existed, it just
	wasn't being called)
	- Add loop checking to register maps.
	- Renamed "sng" to "sgn" for D3DSIO_SGN - it's not handled anywhere
	except for GLSL, so won't matter.

2006-06-14  Robert Shearman <rob@codeweavers.com>

	* dlls/atl/atl_main.c:
	atl: Add a partial implementation of AtlModuleRegisterWndClassInfoW
	based on documentation by Mike McCormack.

	* dlls/kernel/tests/sync.c:
	kernel: Add a test for mutexes.

	* dlls/kernel/tests/.gitignore, dlls/kernel/tests/Makefile.in,
	  dlls/kernel/tests/version.c:
	kernel: Add some tests for VerifyVersionInfo.

	* dlls/ole32/git.c, dlls/ole32/tests/marshal.c:
	ole32: Always rewind the stream in StdGlobalInterfaceTable_GetInterfaceFromGlobal
	as CoUnmarshalInterface may have advanced the stream, even if it failed.

	* dlls/ole32/tests/compobj.c, dlls/ole32/tests/marshal.c:
	ole32: Add a tests for OleSetMenuDescriptor and the global interface table.

2006-06-14  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Updated Norwegian Bokmål resources.

	* dlls/gphoto2.ds/gphoto2_No.rc, dlls/gphoto2.ds/rsrc.rc:
	gphoto2.ds: Added Norwegian Bokmål resources.

2006-06-15  Alexandre Julliard <julliard@winehq.org>

	* programs/winedbg/stack.c:
	winedbg: Avoid a crash when there's no backtrace to print.

	* dlls/kernel/heap.c:
	kernel32: Use unsigned types in GlobalMemoryStatusEx to prevent overflows.

2006-06-15  Mike McCormack <mike@codeweavers.com>

	* server/thread.c:
	server: Fix a win64 warning.

	* server/user.c:
	server: Cast user handles to unsigned long for win64 compatibility.

	* server/handle.c:
	server: Cast handles to unsigned long for win64 compatibility.

	* dlls/comctl32/tests/.gitignore, dlls/comctl32/tests/Makefile.in,
	  dlls/comctl32/tests/listview.c:
	comctl32: Add a short test for the listview.

	* dlls/comctl32/listview.c:
	comctl32: Arrange the listview after deleting all items so we will place icons
	at the top again.

	* dlls/comctl32/listview.c:
	comctl32: Use the listview's background colour when drawing with imagelist.

2006-06-14  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/cond.y:
	msi: Don't define COND_SPACE twice.

2006-06-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/mciwave/mciwave.c:
	mciwave: Fixed a bogus free.

2006-06-14  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/user/combo.c:
	user32: Fix character conversion in combo box.
	Replace toupper/tolower with CharUpper/CharLower functions.

2006-06-14  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* tools/wine.inf:
	wine.inf: Add fake dll for advpack.dll.

2006-06-14  Robert Shearman <rob@codeweavers.com>

	* dlls/atl/atl.spec, dlls/atl/atl_main.c, dlls/atl/atlwin.h:
	atl: Add a stub for AtlModuleRegisterWndClassInfoW.

	* dlls/ntdll/virtual.c:
	ntdll: Change the test for no relocation information to use the
	IMAGE_FILE_RELOCS_STRIPPED flag instead of a zero sized relocations
	section.
	This fixes loading of resource-only DLLs that have a load-address of
	0x400000.

	* dlls/msxml3/domdoc.c:
	msxml: Text nodes with just whitespace should be stripped.

	* dlls/msxml3/text.c:
	msxml: Implement IXMLDOMElement for text elements by using
	create_element instead of create_basic_node.

	* dlls/msxml3/element.c, dlls/msxml3/msxml_private.h, dlls/msxml3/node.c:
	msxml: Allow the element implementation to be aggregatable.

2006-06-13  Paul Vriens <Paul.Vriens@xs4all.nl>

	* configure, configure.ac, dlls/uxtheme/Makefile.in,
	  dlls/uxtheme/tests/.gitignore, dlls/uxtheme/tests/Makefile.in,
	  dlls/uxtheme/tests/system.c, programs/winetest/Makefile.in:
	uxtheme: Add framework and initial tests.

2006-06-14  Choe Hwanjin <choe.hwanjin@gmail.com>

	* include/winuser.h:
	winuser.h: Add some missing virtual key symbols.

2006-06-13  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Add a test for reading long strings.

	* dlls/msi/tests/db.c:
	msi: Add a test for creating a record with a long string.

	* dlls/msi/tests/db.c:
	msi: Add a test for MsiDatabaseExport.

2006-06-14  Mike McCormack <mike@codeweavers.com>

	* include/mapi.h:
	mapi: Fix declaration of LPMAPISENDMAIL (spotted by Cho Hwanjin).

	* dlls/advpack/reg.c:
	advpack: Remove some dead code. (Coverity)

	* include/dbghelp.h:
	dbghelp: Fix the prototype of some callbacks.

	* dlls/crypt32/oid.c:
	crypt32: Fix a cast for Win64.

	* tools/wrc/parser.y:
	wrc: Remove some tokens declared twice.

2006-06-13  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: getaddrinfo returns any non-zero value on failure, not just negative
	values.

2006-06-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/serial.c:
	ntdll: Cast termios.c_cflag to avoid a printf format warning.

	* programs/winedbg/gdbproxy.c:
	winedbg: sscanf arguments should be ints, not size_t.

	* tools/winebuild/relay.c, tools/winebuild/res32.c:
	winebuild: Fix a few printf format warnings by casting size_t.

	* dlls/wined3d/wined3d_private.h:
	wined3d: Use unsigned int instead of size_t to avoid printf format warnings.

	* dlls/oleaut32/vartype.c:
	oleaut32: Use unsigned int instead of size_t to avoid printf format warnings.

	* dlls/msvcrt/cppexcept.h:
	msvcrt: Use unsigned int instead of size_t to avoid printf format warnings.

	* dlls/crypt32/context.c, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/store.c:
	crypt32: Use unsigned int instead of size_t to avoid printf format warnings.

	* tools/widl/server.c, tools/widl/typegen.c:
	widl: Use unsigned int instead of size_t to avoid printf format warnings.

	* programs/winevdm/winevdm.c:
	winevdm: Don't use sizeof in traces to avoid printf format warnings.

	* programs/rpcss/np_server.c:
	rpcss: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/wineps.drv/glyphlist.c, dlls/wineps.drv/ppd.c:
	wineps.drv: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/user/dde_misc.c, dlls/user/message.c:
	user32: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_transport.c,
	  dlls/rpcrt4/rpcss_np_client.c:
	rpcrt4: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/ole32/oleproxy.c, dlls/ole32/stg_prop.c:
	ole32: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/netapi32/netbios.c:
	netapi32: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/msvfw32/msvideo_main.c:
	msvfw32: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/mciseq/mcimidi.c:
	mciseq: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/kernel/format_msg.c, dlls/kernel/toolhelp.c:
	kernel32: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/dsound/buffer.c, dlls/dsound/capture.c, dlls/dsound/dsound.c,
	  dlls/dsound/primary.c, dlls/dsound/sound3d.c:
	dsound: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/dplayx/dplayx_global.c:
	dplayx: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/dmstyle/commandtrack.c, dlls/dmstyle/style.c:
	dmstyle: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/dinput/device.c:
	dinput: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/d3d9/stateblock.c:
	d3d9: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/d3d8/device.c:
	d3d8: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/comdlg32/printdlg16.c:
	comdlg32: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/comctl32/propsheet.c, dlls/comctl32/tests/mru.c:
	comctl32: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/advapi32/service.c:
	advapi32: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/winmm/tests/capture.c, dlls/winmm/tests/wave.c:
	winmm/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/version/tests/info.c:
	version/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/urlmon/tests/misc.c:
	urlmon/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/rpcrt4/tests/rpc.c:
	rpcrt4/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/ole32/tests/marshal.c, dlls/ole32/tests/moniker.c:
	ole32/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/ntdll/tests/env.c, dlls/ntdll/tests/info.c, dlls/ntdll/tests/rtl.c,
	  dlls/ntdll/tests/rtlstr.c:
	ntdll/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/mshtml/tests/htmldoc.c, dlls/mshtml/tests/protocol.c:
	mshtml/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/mlang/tests/mlang.c:
	mlang/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/mapi32/tests/prop.c, dlls/mapi32/tests/util.c:
	mapi32/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/kernel/tests/codepage.c, dlls/kernel/tests/comm.c,
	  dlls/kernel/tests/file.c, dlls/kernel/tests/locale.c,
	  dlls/kernel/tests/pipe.c:
	kernel32/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/gdi/tests/bitmap.c, dlls/gdi/tests/font.c:
	gdi/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/crypt32/tests/cert.c, dlls/crypt32/tests/encode.c,
	  dlls/crypt32/tests/store.c:
	crypt32/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/wininet/tests/internet.c, dlls/wininet/tests/url.c:
	wininet/tests: Use lstrlenA instead of strlen in ok() to avoid printf format
	warnings.

	* dlls/version/tests/install.c:
	version/tests: Use lstrlenA instead of strlen in ok() to avoid printf format
	warnings.

	* dlls/shlwapi/tests/ordinal.c:
	shlwapi/tests: Use lstrlenA instead of strlen in ok() to avoid printf format
	warnings.

	* dlls/ntdll/tests/path.c:
	ntdll/tests: Use lstrlenA instead of strlen in ok() to avoid printf format
	warnings.

	* dlls/mscms/tests/profile.c:
	mscms/tests: Use lstrlenA instead of strlen in ok() to avoid printf format
	warnings.

	* dlls/kernel/tests/module.c, dlls/kernel/tests/path.c:
	kernel32/tests: Use lstrlenA instead of strlen in ok() to avoid printf format
	warnings.

	* dlls/crypt32/tests/base64.c, dlls/crypt32/tests/encode.c,
	  dlls/crypt32/tests/str.c:
	crypt32/tests: Use lstrlenA instead of strlen in ok() to avoid printf format
	warnings.

	* dlls/advapi32/tests/crypt.c, dlls/advapi32/tests/registry.c,
	  dlls/advapi32/tests/security.c:
	advapi32/tests: Use lstrlenA instead of strlen in ok() to avoid printf format
	warnings.

2006-06-08  Nick Burns <adger44@hotmail.com>

	* include/windef.h:
	include: Use force_align_arg_pointer on MacOS to fix the stack on entry to Wine.

2006-06-13  Mike McCormack <mike@codeweavers.com>

	* include/custcntl.h, include/dispdib.h, include/mapi.h,
	  include/objbase.h, include/storage.h, include/twain.h,
	  include/winnls32.h:
	include: Remove non-ASCII characters in headers for winelib compatibility.

	* dlls/wineps.drv/init.c, dlls/x11drv/init.c, include/wingdi.h:
	wingdi: Fix typo in definition of BLTALIGNMENT (spotted by Choe Hwanjin).

	* dlls/msi/table.c:
	msi: Fix loading of long strings.

	* dlls/winmm/joystick/joystick.c:
	winmm: Undefine SW_MAX defined by linux/input.h to avoid a conflict with
	winuser.h.

2006-06-12  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/avifil32/acmstream.c, dlls/avifil32/avifile.c,
	  dlls/avifil32/getframe.c, dlls/avifil32/wavfile.c,
	  dlls/comdlg32/filedlg31.c, dlls/dbghelp/msc.c,
	  dlls/ddraw/executebuffer.c, dlls/gdi/gdiobj.c, dlls/mciseq/mcimidi.c,
	  dlls/mpr/wnet.c, dlls/msvfw32/msvideo_main.c, dlls/ntdll/path.c,
	  dlls/user/exticon.c, dlls/user/listbox.c:
	Yet another round of redundant NULL checks before HeapFree.

2006-06-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/console.c, dlls/msvcrt/cpp.c, dlls/msvcrt/cppexcept.c,
	  dlls/msvcrt/ctype.c, dlls/msvcrt/data.c, dlls/msvcrt/dir.c,
	  dlls/msvcrt/environ.c, dlls/msvcrt/errno.c, dlls/msvcrt/except.c,
	  dlls/msvcrt/exit.c, dlls/msvcrt/file.c, dlls/msvcrt/heap.c,
	  dlls/msvcrt/locale.c, dlls/msvcrt/lock.c, dlls/msvcrt/main.c,
	  dlls/msvcrt/math.c, dlls/msvcrt/mbcs.c, dlls/msvcrt/misc.c,
	  dlls/msvcrt/process.c, dlls/msvcrt/scanf.c, dlls/msvcrt/string.c,
	  dlls/msvcrt/thread.c, dlls/msvcrt/time.c, dlls/msvcrt/undname.c,
	  dlls/msvcrt/wcs.c:
	msvcrt: Explicitly specify CDECL calling convention on exported functions.

	* dlls/oledlg/oledlg_main.c:
	oledlg: Declare varargs functions as WINAPIV instead of cdecl.

	* dlls/avifil32/api.c:
	avifil32: Declare varargs functions as WINAPIV instead of cdecl.

2006-06-12  Mike McCormack <mike@codeweavers.com>

	* dlls/userenv/userenv_main.c, include/Makefile.in, include/profinfo.h:
	userenv: Add profinfo.h.

2006-06-12  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/pixelshader.c:
	wined3d: Fix params for DP2ADD/TEXLDD.
	DP2ADD is valid on pshaders 2.0 and above, has 4 parameters.
	TEXLDD is valid on pshaders 2.x and above, has 5 parameters.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Mark instructions without a destination token.
	There are a total of 17 instructions without a destination token. Of
	those 9 have num_params != 0, which means that we will not process any
	of them correctly, because we assume the first token (if present) is a
	destination token.
	Those are basically all the flow control instructions, which we plan to
	support very soon. They have source tokens, and no destination. Add a
	flag that marks them up to the ins table. Use this flag in the trace
	pass, and generation pass.

	* dlls/wined3d/baseshader.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c:
	wined3d: Keep pshader and vshader constants in GLSL separate.
	GLSL uniforms have as scope the entire program.
	To prevent conflicts, name pshader and vshader constants differently.
	Based on a patch by Jason Green.

	* dlls/wined3d/baseshader.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Improve Sampler support on 2.0 and 3.0 shaders.
	- track sampler declarations and store the sampler usage in reg_maps structure
	- store a fake sampler usage for 1.X shaders (defined as 2D sampler)
	- re-sync glsl TEX implementation with the ARB one (no idea why they diverged..)
	- use sampler type in new TEX implementation to support 2D, 3D, and Cube sampling
	- change drawprim to bind pixel shader samplers
	Additional improvements:
	- rename texture limit to texcoord to prevent confusion
	- add sampler limit, and use that for samplers - *not* the same as texcoord above

	* dlls/wined3d/glsl_shader.c:
	wined3d: Cast more things.
	Anything with a swizzle has to be casted to vec4, or it won't work properly.
	There's multiple ways to do this, for the moment pick the easiest one.

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add support for shader model 3.0 I/O registers.
	SM 3.0 can pack multiple "semantics" into 12 generic input/output registers.
	To support that, define temporaries called IN and OUT, and use those as
	the output registers. At the end of the vshader, unpack the OUT temps
	into the proper GL variables. At the beginning of the pshader, pack the
	GL variables back into 12 IN registers.

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c:
	wined3d: Trivial cleanups
	- compiler warnings and errors should be FIXME
	- remove obsolete comment, and change variable type.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Register map cleanups.
	Various cleanups:
	- do not use DWORD as a bitmask, that places artificial limit of 32 on
	registers
	- track attributes that are used and declare only those
	- move declarations function call in pshader/vshader to allow us to
	insert pixel or vertex specific code between the declarations and
	the rest of the code
	- remove redundant 0 intializers
	- remove useless continue statement

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Share trace pass
	Now that the declaration function is out of the way, the tracing pass,
	which is very long and 100% the same can be shared between pixel and
	vertex shaders.
	The new function is called shader_trace_init(), and is responsible for:
	- tracing the shader
	- initializing the function length
	- setting the shader version [needed very early]

	* dlls/wined3d/baseshader.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Rework dcl processing.
	The new function is called in pass 2 (getister counting/maps), and
	it's now in baseshader. It operates on all INPUT and OUTPUT registers,
	which, in addition to the old vertex shader input declarations covers
	Shader Model 3.0 vshader output and pshader input declarations. The
	result is stored into the reg_map structure.

	* dlls/wined3d/baseshader.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: The namedArrays code path is dead (always FALSE).
	Delete the entire namedArrays code path and all its dependencies (one
	of which is quite long - storeOrder in drawprim is always FALSE, for
	example). Delete declaredArrays, and make its code path the default.

2006-06-12  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/mscms/tests/profile.c:
	mscms: Eliminate complex test macro to make source navigation easier.

2006-06-13  Michael Stefaniuc <mstefani@redhat.de>

	* include/winnt.h:
	include: The visibility attribute is supported only by gcc >= 3.3.

2006-06-12  Robert Shearman <rob@codeweavers.com>

	* dlls/mlang/mlang.c:
	mlang: Return S_OK from fnIMultiLanguage2_SetMimeDBSource.
	The source is largely irrelevant since we are not likely to be wanting
	to ship updates to the MIME database as registry updates, instead of
	just changing the code.

	* dlls/mlang/mlang.c:
	mlang: Add us-ascii encoding to the list of supported encodings.

	* dlls/advapi32/security.c:
	advapi32: Fix the parsing of string SIDs with multiple sub-authorities.

	* dlls/advapi32/security.c:
	advapi32: Replace some mixed tabs with spaces.

	* dlls/advapi32/security.c:
	advapi32: Support well-knowns SIDs in string SIDs.

	* dlls/advapi32/security.c:
	advapi32: Nul-terminate the domain string in LookupAccountNameW.

	* dlls/ole32/compobj.c:
	ole32: Print an error if a DLL's DllGetClassObject fails as this is
	usually a good indicator of a bug elsewhere in Wine.

2006-06-09  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/device.c:
	wined3d: Move a checkGLcall to it's gl call inside an "if".

	* dlls/wined3d/device.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Fix stencil related render states.

	* dlls/wined3d/directx.c, include/d3d9caps.h, include/d3dcaps.h:
	wined3d: Enable two sided stencil in the caps.

	* dlls/wined3d/utils.c:
	wined3d: Also print the format like a fourcc if unknown in debug_d3dformat.

2006-06-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrtd/debug.c:
	msvcrtd: Explicitly specify CDECL calling convention on exported functions.

	* dlls/msvcrt20/msvcrt20.c:
	msvcrt20: Explicitly specify CDECL calling convention on exported functions.

	* dlls/crtdll/crtdll_main.c:
	crtdll: Explicitly specify CDECL calling convention on exported functions.

	* dlls/ntdll/misc.c:
	ntdll: Explicitly specify CDECL calling convention on exported functions.

	* dlls/ole32/memlockbytes16.c, dlls/ole32/ole16.c, dlls/ole32/storage.c:
	ole32: Explicitly specify CDECL calling convention on exported functions.

	* dlls/wldap32/add.c, dlls/wldap32/ber.c, dlls/wldap32/bind.c,
	  dlls/wldap32/compare.c, dlls/wldap32/control.c,
	  dlls/wldap32/delete.c, dlls/wldap32/dn.c, dlls/wldap32/error.c,
	  dlls/wldap32/extended.c, dlls/wldap32/init.c, dlls/wldap32/misc.c,
	  dlls/wldap32/modify.c, dlls/wldap32/modrdn.c, dlls/wldap32/option.c,
	  dlls/wldap32/page.c, dlls/wldap32/parse.c, dlls/wldap32/rename.c,
	  dlls/wldap32/search.c, dlls/wldap32/value.c, include/winldap.h:
	wldap32: Explicitly specify CDECL calling convention on exported functions.

	* dlls/glut32/glut.c, include/winbase.h:
	include: Added prototype for DllMain.

	* dlls/mshtml/main.c, dlls/wininet/wininet_main.c, include/objbase.h,
	  include/shlwapi.h:
	include: Make the Dll* entry points hidden.

	* dlls/ntdll/ntdll.spec:
	ntdll: Added spec entry for NtQueryMultipleValueKey.

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Fix an uninitialized variable bug.
	Mark todo a test that depended on the bug to succeed.

2006-06-10  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: Cleanup GetSrcAndOpFromValue().
	- Cleanup GetSrcAndOpFromValue().
	- Use naming more consistent with the rest of the file.

2006-06-12  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Add some more test cases for INSERT.

	* dlls/msi/tests/format.c:
	msi: Add some more MsiFormatRecord tests.

	* dlls/msi/tests/package.c:
	msi: Add tests for creating packages and formatting records.

	* dlls/msi/tests/package.c:
	msi: Delete any databases we create at the end of each test.

	* dlls/msi/tests/msi.c:
	msi: Fix compilation on msvc6.

	* dlls/msi/tests/db.c:
	msi: Remove an inconsistent test.

	* dlls/msi/tests/format.c:
	msi: Fix some test cases to pass against win2k.

2006-06-12  Robert Shearman <rob@codeweavers.com>

	* include/xmldom.idl:
	include: Add IXMLHttpRequest interface and XMLHttpRequest coclass to xmldoc.idl.

	* dlls/atl/atl_main.c:
	atl: Implement AtlModuleGetClassObject.

	* dlls/msxml3/element.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Fix domelem_get_tagName to return a string with the namespace prefixed,
	if it is present.

	* dlls/msxml3/nodelist.c:
	msxml3: Initialise output interface pointers to NULL in
	xmlnodelist_QueryInterface and xmlnodelist_nextNode.

2006-06-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/wineps.drv/type42.c:
	wineps.drv: Make some variables static.

	* dlls/crypt32/oid.c:
	crypt32: Make some variables static and/or const.

	* dlls/shell32/brsfolder.c, dlls/shell32/shellole.c,
	  dlls/shell32/shlview.c:
	shell32: Make some variables static and/or const.

	* dlls/kernel/registry16.c:
	kernel32: Make some variables static.

	* dlls/advapi32/crypt.c, dlls/advapi32/security.c,
	  dlls/advapi32/service.c:
	advapi32: Make some variables static and/or const.

	* dlls/winemp3.acm/common.c, dlls/winemp3.acm/huffman.h,
	  dlls/winemp3.acm/l2tables.h, dlls/winemp3.acm/layer2.c,
	  dlls/winemp3.acm/layer3.c, dlls/winemp3.acm/mpegl3.c,
	  dlls/winemp3.acm/mpg123.h, dlls/winemp3.acm/tabinit.c:
	winemp3.acm: Make some variables static and/or const.

	* dlls/msi/action.c, dlls/msi/dialog.c, dlls/msi/events.c:
	msi: Make some variables static and/or const.

	* dlls/crtdll/crtdll.spec:
	crtdll: Fixed copy/paste error in definition of _baseminor_dll and
	_baseversion_dll.

	* dlls/x11drv/x11drv.h, dlls/x11drv/x11drv_main.c:
	x11drv: Get rid of the no longer used desktop_tid variable.

2006-06-12  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/menu.c:
	user32: Remove redundant SetLastError call from MENU_SetMenu.

2006-06-09  Detlef Riekenberg <wine.dev@web.de>

	* include/Makefile.in, include/ddk/compstui.h:
	include/ddk: Add minimal compstui.h.

2006-06-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/winedbg/tgt_minidump.c:
	winedbg: Write-strings warnings fix.

2006-06-09  Christian Gmeiner <christian.gmeiner@students.fhv.at>

	* dlls/setupapi/devinst.c:
	setupapi: Documentation update.

2006-06-11  Mike McCormack <mike@codeweavers.com>

	* dlls/user/message.c:
	user32: Win64 lparam and wparam are longs.

	* dlls/user/lstr.c:
	user32: Fix a pointer size warning in Win64.

	* dlls/kernel/locale.c:
	kernel32: Fix a cast for Win64.

	* dlls/msi/tests/db.c:
	msi: Add some test cases for "SELECT ... WHERE condition".

	* dlls/msi/handle.c:
	msi: Freeing the zero handle always succeeds.

	* dlls/msi/msiquery.c:
	msi: Always initialize MsiViewFetch's returned record to zero.

2006-06-10  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/device.c:
	d3d9: Make some test functions static.

	* dlls/d3d8/tests/device.c:
	d3d8: Make some test functions static.

2006-06-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvcrt/except.c:
	msvcrt: Print exception code in hex.

2006-06-10  Jason Green <jave27@gmail.com>

	* dlls/wined3d/vertexshader.c:
	wined3d: Map D3DSIO_DEF to it's GLSL generating function for vertex shaders.

2006-06-10  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/cstub.c:
	rpcrt4: Add an exception handler for CStdStubBuffer_Invoke.
	This is needed because IRpcStubBuffer::Invoke should not allow RPC
	exceptions to be passed to the caller.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Initialise pStubMsg->MemorySize to zero before calling
	ComplexStructMemorySize from NdrComplexArrayUnmarshall.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Use safe_mutiply in conformant array functions.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Pass in a maximum variance value to ReadVariance to allow us
	to validate the conformance values being read from the wire.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Check that strings are null-terminated on unmarshaling of
	conformant-varying structs.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Use safe_multiply when multiplying anything by pStubMsg->ActualCount
	or pStubMsg->MaxCount.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Raise an exception during unmarshaling if a conformant string isn't
	null-terminated.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Introduce a new function, safe_multiply, which will raise an
	exception if a multiply overflows a 4-byte integer.
	This will protect the unmarshaling code against attacks specifying a
	large variance.
	Use this new function in the conformant string functions to harden them
	against attack.

2006-06-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/uuid/uuid.c, include/guiddef.h:
	uuid: Mark all GUID variables as hidden.

	* dlls/dnsapi/main.c:
	dnsapi: DnsExtractRecordsFromMessage_A is not exported.

	* dlls/advapi32/advapi32.spec:
	advapi32: Added spec entry for GetEffectiveRightsFromAclW.

2006-06-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c:
	wined3d: Make all the local shader functions static.

	* dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/indexbuffer.c,
	  dlls/wined3d/palette.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/query.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/texture.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c:
	wined3d: Make the virtual table functions static where possible.

2006-06-09  Pavel Roskin <proski@gnu.org>

	* programs/winecfg/drivedetect.c:
	winecfg: Recognize all CD and floppy devices listed in Linux devices.txt.

	* programs/winecfg/drivedetect.c, programs/winecfg/winecfg.h:
	winecfg: Allow and prefer using A: and B: for floppies.
	Pass drive type to allocate_letter().  Start search from 'A' for
	floppies.
	Fix missing parentheses in the DRIVE_MASK_BIT definition.  It's a bug
	that is triggered by non-sequential drive allocation.

2006-06-09  Jason Green <jave27@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Change fog output variable name for GLSL shaders.

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Fix regression from register maps switch for ARB shaders.
	I missed a register mask in the move to share the shader_hw_def()
	function between pixel and vertex shaders for ARB shaders.  Fixed
	that, and made the GLSL version use the same mask for consistency.

2006-06-09  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c:
	wined3d: Enable CND/CMP for SHADER_ARB.

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: Print out sampler state names.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Downgrade Get*Shader FIXME to TRACE.

2006-06-09  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Tests for GetPrintProcessorDirectory.

2006-06-09  Saulius Krasuckas <saulius2@ar.fi.lt>

	* dlls/advapi32/tests/registry.c:
	advapi32: Test RegSetValueEx[AW] for setting some sequential strings as one.

2006-06-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/msi/create.c, dlls/msi/delete.c, dlls/msi/distinct.c,
	  dlls/msi/insert.c, dlls/msi/msipriv.h, dlls/msi/order.c,
	  dlls/msi/select.c, dlls/msi/table.c, dlls/msi/where.c:
	msi: Make all the ops structures static and const.

	* dlls/imagehlp/Makefile.in, dlls/imagehlp/internal.c:
	imagehlp: Remove the unused internal.c file.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Make the virtual table functions static where possible.

	* dlls/ole32/memlockbytes.c, dlls/ole32/storage32.c,
	  dlls/ole32/storage32.h:
	ole32: Make the virtual table functions static where possible.

	* dlls/itss/itss.c:
	itss: Make the virtual table functions static where possible.

	* dlls/dxdiagn/container.c, dlls/dxdiagn/dxdiag_private.h,
	  dlls/dxdiagn/provider.c:
	dxdiagn: Make the virtual table functions static where possible.

	* dlls/dswave/dswave.c, dlls/dswave/dswave_private.h:
	dswave: Make the virtual table functions static where possible.

	* dlls/dsound/capture.c, dlls/dsound/dsound_private.h,
	  dlls/dsound/duplex.c:
	dsound: Make the virtual table functions static where possible.

	* dlls/dpnet/address.c, dlls/dpnet/client.c, dlls/dpnet/dpnet_private.h:
	dpnet: Make the virtual table functions static where possible.

	* dlls/dmusic/buffer.c, dlls/dmusic/clock.c, dlls/dmusic/collection.c,
	  dlls/dmusic/dmusic.c, dlls/dmusic/dmusic_private.h,
	  dlls/dmusic/download.c, dlls/dmusic/downloadedinstrument.c,
	  dlls/dmusic/instrument.c, dlls/dmusic/port.c,
	  dlls/dmusic/portdownload.c, dlls/dmusic/thru.c:
	dmusic: Make the virtual table functions static where possible.

	* dlls/dmsynth/dmsynth_private.h, dlls/dmsynth/synth.c,
	  dlls/dmsynth/synthsink.c:
	dmsynth: Make the virtual table functions static where possible.

	* dlls/dmstyle/auditiontrack.c, dlls/dmstyle/chordtrack.c,
	  dlls/dmstyle/commandtrack.c, dlls/dmstyle/dmstyle_private.h,
	  dlls/dmstyle/motiftrack.c, dlls/dmstyle/mutetrack.c,
	  dlls/dmstyle/style.c, dlls/dmstyle/styletrack.c:
	dmstyle: Make the virtual table functions static where possible.

	* dlls/dmscript/dmscript_private.h, dlls/dmscript/script.c,
	  dlls/dmscript/scripttrack.c:
	dmscript: Make the virtual table functions static where possible.

	* dlls/dmloader/classfactory.c, dlls/dmloader/container.c,
	  dlls/dmloader/dmloader_private.h, dlls/dmloader/loader.c,
	  dlls/dmloader/loaderstream.c:
	dmloader: Make the virtual table functions static where possible.

	* dlls/dmcompos/chordmap.c, dlls/dmcompos/chordmaptrack.c,
	  dlls/dmcompos/composer.c, dlls/dmcompos/dmcompos_private.h,
	  dlls/dmcompos/signposttrack.c:
	dmcompos: Make the virtual table functions static where possible.

	* dlls/d3d9/basetexture.c, dlls/d3d9/cubetexture.c,
	  dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c, dlls/d3d9/directx.c,
	  dlls/d3d9/indexbuffer.c, dlls/d3d9/pixelshader.c, dlls/d3d9/query.c,
	  dlls/d3d9/resource.c, dlls/d3d9/stateblock.c, dlls/d3d9/surface.c,
	  dlls/d3d9/swapchain.c, dlls/d3d9/texture.c, dlls/d3d9/vertexbuffer.c,
	  dlls/d3d9/vertexdeclaration.c, dlls/d3d9/vertexshader.c,
	  dlls/d3d9/volume.c, dlls/d3d9/volumetexture.c:
	d3d9: Make the virtual table functions static where possible.

	* dlls/d3dx8/d3dx8core_private.h, dlls/d3dx8/d3dxbuffer.c:
	d3dx8: Make the virtual table functions static where possible.

	* dlls/d3d8/basetexture.c, dlls/d3d8/cubetexture.c,
	  dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d8/indexbuffer.c, dlls/d3d8/pixelshader.c,
	  dlls/d3d8/resource.c, dlls/d3d8/stateblock.c, dlls/d3d8/surface.c,
	  dlls/d3d8/swapchain.c, dlls/d3d8/texture.c, dlls/d3d8/vertexbuffer.c,
	  dlls/d3d8/vertexshader.c, dlls/d3d8/volume.c,
	  dlls/d3d8/volumetexture.c:
	d3d8: Make the virtual table functions static where possible.

2006-06-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/x11drv/keyboard.c:
	x11drv: Write-strings warnings fix.

2006-06-09  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Add GetPrintProcessorDirectoryA.

2006-06-09  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: We always pass in an IRpcChannelBuffer to IRpcStubBuffer::Invoke now,
	so remove the case for it being NULL.

	* dlls/ole32/rpc.c:
	ole32: If IRpcStubBuffer_Invoke fails, we should raise an exception to
	tell the RPC runtime that the call failed.

	* dlls/ole32/regsvr.c:
	ole32: Register ISequentialStream for marshaling.

	* dlls/ole32/compobj.c, dlls/ole32/ole32.spec:
	ole32: Implement CoQueryClientBlanket, CoImpersonateClient and
	CoRevertToSelf on top of CoGetCallContext, which is a stub.

	* dlls/ole32/ftmarshal.c:
	ole32: Implement FTMarshalImpl_GetMarshalSizeMax.

2006-06-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/regsvr.c, dlls/shell32/shfldr.h,
	  dlls/shell32/shfldr_unixfs.c:
	shell32: Use the standard DEFINE_GUID macro to define GUIDs.

	* dlls/riched20/richole.c:
	riched32: Use the standard DEFINE_GUID macro to define GUIDs.

	* dlls/ole32/antimoniker.c, dlls/ole32/classmoniker.c,
	  dlls/ole32/compobj_private.h, dlls/ole32/compositemoniker.c,
	  dlls/ole32/filemoniker.c, dlls/ole32/ftmarshal.c,
	  dlls/ole32/itemmoniker.c, dlls/ole32/moniker.h,
	  dlls/ole32/oleproxy.c, dlls/ole32/regsvr.c, dlls/ole32/stubmanager.c:
	ole32: Use the standard DEFINE_OLEGUID macro to define GUIDs.

	* dlls/oleaut32/oleaut.c, dlls/oleaut32/regsvr.c, dlls/oleaut32/typelib.c,
	  dlls/oleaut32/typelib.h, dlls/oleaut32/usrmarshal.c:
	oleaut32: Use the standard DEFINE_OLEGUID macro to define GUIDs.

2006-06-09  Jason Green <jave27@gmail.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c:
	wined3d: GLSL shader cleanup patch.
	- Based on comments from H. Verbeet
	- Changed the distinction from .rgba & .xyzw masks to only use .xyzw
	in GLSL shaders.  They are interchangeable, and only served to make
	the trace look more intuitive, but they don't always apply as-is, so
	we'll just leave everything to .xyzw.
	- Got rid of the "UseProgramObjectARB(0)" call in drawprim.  If there
	is no shader set on the next primitive, then that primitive will
	call UseProgramObjectARB(0) when it begins to draw.

2006-06-08  Pierre d'Herbemont <stegefin@free.fr>

	* dlls/dbghelp/minidump.c:
	dbghelp: Implement fetch_thread_info on powerpc.

	* dlls/ntdll/thread.c:
	ntdll: Fix NtQueryInformationThread on non x86.

2006-06-09  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Clear an object pointer during unmarshaling, otherwise we
	could end up using the previously allocated memory even if it isn't
	the right size, causing heap corruption.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Initialise pStubMsg->MemorySize to zero before calling
	ComplexStructMemorySize from NdrComplexArrayUnmarshall.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Don't raise an exception if there is no freer function - not all types
	have a freer.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement more base types for complex types.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Now that there's a process-wide pool of connections we don't
	need to copy the FromConn field when copying bindings.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Return the status received from RPCRT4_Send in I_RpcSend instead of
	always returning RPC_S_OK.

2006-06-08  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/.gitignore, dlls/d3d9/tests/Makefile.in,
	  dlls/d3d9/tests/texture.c:
	d3d9: Add a test for default texture stage state values.

2006-06-09  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: ScriptTextOut updated to reflect that it must have a hdc passed to it.

2006-06-09  Peter Beutner <p.beutner@gmx.net>

	* dlls/msvidc32/msvidc32_De.rc, dlls/msvidc32/msvidc32_En.rc,
	  dlls/msvidc32/msvidc32_Fr.rc, dlls/msvidc32/msvidc32_Hu.rc,
	  dlls/msvidc32/msvidc32_Ko.rc, dlls/msvidc32/msvidc32_No.rc,
	  dlls/msvidc32/msvidc32_Tr.rc:
	msvidc: Change short description to MS-CRAM.

2006-06-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/menu.c, dlls/user/tests/win.c, dlls/user/win.c:
	user: Neither WS_CAPTION nor WS_EX_APPWINDOW has anything to do how
	passed in to CreateWindow menu should be handled.

2006-06-09  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/oleaut32/safearray.c, dlls/oleaut32/tests/safearray.c:
	oleaut32: Fix safearray data destruction.

2006-06-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.c,
	  dlls/opengl32/opengl_ext.h, dlls/opengl32/wgl.c:
	opengl32: Store function pointers in a separate array to avoid a bunch of
	relocations.

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.c,
	  dlls/opengl32/wgl.c:
	opengl32: Only store the glX name if different from the wgl name.

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.c,
	  dlls/opengl32/opengl_ext.h:
	opengl32: Make all the function pointers and thunks static.

2006-06-09  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Update the progress control while installing.

	* dlls/msi/action.c:
	msi: Remove some unnecessary NULL checks.

2006-06-09  Jason Green <jave27@gmail.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h:
	wined3d: Allow drawPrim to create and use the GLSL program.

	* dlls/wined3d/device.c:
	wined3d: Add GLSL helper functions to Device.
	- Add functions to attach & detach shader objects, create and delete programs,
	and maintain the list of programs.
	- Add a list of GLSL shader programs to the device which is initialized on
	Init3D(), and deleted on Release().

	* dlls/wined3d/vertexshader.c:
	wined3d: Map vertex shader instructions to GLSL generating functions.

	* dlls/wined3d/pixelshader.c:
	wined3d: Map pixel shader instructions to GLSL generating functions.

	* dlls/wined3d/wined3d_private.h:
	wined3d: Prototype the GLSL functions for use with pixel and vertex shaders.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c:
	wined3d: Added more declarations to GLSL.
	- Declare more variable names for GLSL programs.
	- Some of these won't need to be declared eventually, but it doesn't hurt to
	do it for now.
	- Correct output name for pixel shaders (gl_FragColor instead of glFragColor).

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Unified float constant register mapping between ARB pixel and vertex
	shaders.
	- Got rid of the separate constant maps.
	- Side effect of this is that the map is a bit larger for pixel shaders than
	it needs to be

	* dlls/wined3d/Makefile.in, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add the bulk of the GLSL string generation functions.
	- Add a new file glsl_shader.c which contains almost every GLSL specific
	function we'll need
	- Move print_glsl_info() into glsl_shader.c
	- Move the shader_reg_maps struct info into the private header, and make it
	part of SHADER_OPCODE_ARG.
	- Create a new shared ps/vs register map for float constants (future patch
	will make ARB programs use this, too)

2006-06-08  Jason Green <jave27@gmail.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move constant loading out of DrawPrimDrawStrided() and enable
	loading float constants for GLSL.
	- DrawPrim is just too big of a function.  This separates the passing
	of constants to the shader into new functions.
	- Fixes an off-by-one error when loading vertex declaration constants
	(should be <, not <=)
	- Adds a function for GLSL loading of constants (aka Uniforms)
	- Adds a GLSL program variable to the stateblock and sets it to 0 (a
	future patch will actually create this program)

2006-06-08  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Return FALSE in the WM_CLOSE PROPSHEET_DialogProc handler.
	Return FALSE in the WM_CLOSE PROPSHEET_DialogProc handler in order to
	allow DefDlgProc to post us WM_COMMAND/IDCANCEL and unblock modal
	message loop.

2006-06-09  Detlef Riekenberg <wine.dev@web.de>

	* programs/cmdlgtst/cmdlgtst.c:
	cmdlgtst: Use standard debug functions.

2006-06-08  Detlef Riekenberg <wine.dev@web.de>

	* dlls/comdlg32/Makefile.in, dlls/comdlg32/finddlg.c,
	  dlls/comdlg32/finddlg16.c:
	comdlg32: Rename finddlg.c to finddlg16.c.

2006-06-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/hlink/hlink.spec:
	hlink: Add spec file entry for HlinkQueryCreateFromData.

	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Make the protseq_ops structure constant.

	* dlls/kernel/heap.c:
	kernel: Added support for GlobalMemoryStatus on MacOS.

	* dlls/mshtml/navigate.c:
	mshtml: Changed C syntax that winapi_check doesn't like.

2006-06-08  Alexandre Julliard <julliard@winehq.org>

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

----------------------------------------------------------------
2006-06-06  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Update ScriptStringAnalyse and tests for ScriptString functions.

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Update ScriptGetCMap to conform to Windows.

	* dlls/usp10/tests/usp10.c:
	usp10: Update tests in test_ScriptItemIzeShapePlace to match Windows results.

2006-06-07  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Add stubs for ScriptCPtoX, ScriptXtoCP and ScriptBreak and some basic
	tests.

2006-06-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/rpcrt4/epm_towers.h:
	rpcrt4: Avoid potential redefinition of uuid_t.

	* configure, configure.ac:
	configure: Make the font warning more explicit about what package is missing.

2006-06-08  Robert Reif <reif@earthlink.net>

	* include/Makefile.in, include/lm.h, include/lmmsg.h:
	include: Add lmmsg.h.

2006-06-07  Phil Lodwick <Phil.Lodwick@EFI.COM>

	* dlls/shell32/tests/shlfileop.c:
	shell32/tests: Test to make sure we can create a non-nested directory.

	* dlls/shell32/shlfileop.c:
	shell32: SHCreateDirectoryEx can create a non-nested directory.

2006-06-07  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/tests/.gitignore, dlls/user/tests/Makefile.in,
	  dlls/user/tests/resource.c, dlls/user/tests/resource.rc:
	user/tests: Update LoadImage test.
	Include a bitmap in the resources and don't depend on Windows'
	OBM_CHECK bitmap anymore.

2006-06-06  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/variant.c:
	oleaut32: Uncomment a line to implement conversion from VT_DISPATCH to VT_BSTR.

	* dlls/oleaut32/vartype.c:
	oleaut32: Handle BSTRs in VARIANT_CopyData.

2006-06-08  Mike McCormack <mike@codeweavers.com>

	* server/registry.c:
	server: Fix a possible memory leak.

	* server/queue.c, server/sock.c, server/user.h:
	server: Make wparam and lparam values unsigned long for win64 compatability.

2006-06-07  Robert Shearman <rob@codeweavers.com>

	* server/window.c:
	server: Don't attach the thread input when changing parents if the new
	parent is the desktop (i.e. it is becoming a top-level window).

	* server/named_pipe.c:
	server: Don't set the client's server field before the server has
	changed into a connected state, otherwise we could assert in
	pipe_client_destroy.

2006-06-08  Alexandre Julliard <julliard@winehq.org>

	* server/event.c, server/process.c, server/request.c, server/thread.c,
	  server/trace.c:
	server: Don't report a fatal protocol error for things that we can recover from.

2006-06-07  Phil Lodwick <Phil.Lodwick@EFI.COM>

	* dlls/wininet/ftp.c:
	wininet: ftp: Fix crash if input buffer is larger than MAX_PATH.

	* dlls/wininet/ftp.c:
	wininet: ftp: 125 is an acceptable response code for the STORE command.

2006-06-07  Robert Shearman <rob@codeweavers.com>

	* libs/unicode/Makefile.in, libs/unicode/c_20127.c, libs/unicode/cpmap.pl,
	  libs/unicode/cptable.c:
	libunicode: Add a code page table for the US-ASCII encoding.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Implement a process-wide connection pool for client connections,
	rather than relying on the restriction of one connection per
	binding. This also avoids the problem of two threads using the same
	connection at the same time.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Fix the retrieval of This for interpreted proxies.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Implement full-pointer support for interpreted stubs.
	Move the calls to the full pointer init functions before
	NdrClient/ServerInitializeNew, like in MIDL-generated code.

2006-06-07  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/.gitignore, dlls/d3d9/tests/Makefile.in,
	  dlls/d3d9/tests/surface.c, dlls/d3d9/tests/volume.c:
	d3d9: Add a test for GetContainer (Volumes & Surfaces).

	* dlls/d3d9/vshaderdeclaration.c:
	d3d9: Remove unused vshaderdeclaration.c.

	* dlls/d3d9/basetexture.c, dlls/d3d9/cubetexture.c, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/d3d9/indexbuffer.c,
	  dlls/d3d9/pixelshader.c, dlls/d3d9/query.c, dlls/d3d9/resource.c,
	  dlls/d3d9/stateblock.c, dlls/d3d9/surface.c, dlls/d3d9/swapchain.c,
	  dlls/d3d9/texture.c, dlls/d3d9/vertexbuffer.c,
	  dlls/d3d9/vertexdeclaration.c, dlls/d3d9/vertexshader.c,
	  dlls/d3d9/volume.c, dlls/d3d9/volumetexture.c:
	d3d9: Fix QueryInterface.
	QueryInterface should return S_OK on success and set the object
	pointer to NULL on failure. This is similar to the patch Ivan
	submitted a while ago for wined3d.

	* dlls/d3d8/basetexture.c, dlls/d3d8/cubetexture.c, dlls/d3d8/device.c,
	  dlls/d3d8/directx.c, dlls/d3d8/indexbuffer.c,
	  dlls/d3d8/pixelshader.c, dlls/d3d8/resource.c,
	  dlls/d3d8/stateblock.c, dlls/d3d8/surface.c, dlls/d3d8/swapchain.c,
	  dlls/d3d8/texture.c, dlls/d3d8/vertexbuffer.c,
	  dlls/d3d8/vertexshader.c, dlls/d3d8/volume.c,
	  dlls/d3d8/volumetexture.c:
	d3d8: Fix QueryInterface.
	QueryInterface should return S_OK on success and set the object
	pointer to NULL on failure. This is similar to the patch Ivan
	submitted a while ago for wined3d.

2006-06-03  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvcrt/undname.c:
	msvcrt: Write-strings warning fix.

2006-06-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/kernel/tests/process.c:
	kernel/tests: Write-strings warnings fix.

2006-06-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/crypt32/encode.c:
	crypt32: Write-strings warning fix.

	* dlls/dbghelp/source.c:
	dbghelp: Write-strings warning fix.

2006-06-07  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c:
	wined3d: TEXREG2GB is valid on pshaders 1.1.

2006-06-06  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/baseshader.c:
	wined3d: Fix NULL dereference in generator function.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Fix missing light recording.
	Write a light with the default parameters in disabled state if
	capturing a missing light.

	* dlls/d3d9/tests/stateblock.c:
	d3d9: Test missing light recording.
	When a light does not exist, and the app attempts to capture it in the
	stateblock, a disabled light with the default light parameters is
	written instead.

	* dlls/d3d9/tests/device.c:
	d3d9: Mipmaps level test.

2006-06-07  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/msi/msi.rc, dlls/msi/msi_Ru.rc:
	msi: Add Russian resource file.

2006-06-07  Robert Reif <reif@earthlink.net>

	* dlls/netapi32/netapi32.c, dlls/netapi32/netapi32.spec,
	  include/lmserver.h:
	netapi32: Add stub for NetServerEnumEx.

2006-06-07  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/console.c, include/wine/server_protocol.h,
	  programs/wineconsole/wineconsole.c, server/console.c,
	  server/protocol.def, server/trace.c:
	server: open_console's from field should be a handle.

	* include/wine/server_protocol.h, server/protocol.def, server/trace.c,
	  tools/make_requests:
	server: Use unsigned long for request types that are 64bit in win64.

2006-06-07  Alexandre Julliard <julliard@winehq.org>

	* server/request.c:
	server: Print process/thread id instead of pointer in protocol errors.

2006-06-07  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/advpack/install.c, dlls/setupapi/install.c, dlls/shlwapi/assoc.c,
	  dlls/x11drv/dib.c, programs/regedit/listview.c:
	Remove more redundant NULL checks before HeapFree (found by Smatch).

2006-06-05  EA Durbin <ead1234@hotmail.com>

	* dlls/msi/tests/db.c:
	msi/tests: Fixed a typo.

2006-06-06  Mike McCormack <mike@codeweavers.com>

	* dlls/hlink/hlink.spec, dlls/hlink/hlink_main.c, tools/wine.inf:
	hlink: Implement DllRegisterServer.

	* dlls/hlink/Makefile.in, dlls/hlink/browse_ctx.c,
	  dlls/hlink/hlink_main.c, dlls/hlink/link.c:
	hlink: Add a basic implementation (based on work by Aric Stewart).

	* configure, configure.ac, dlls/Makefile.in, dlls/hlink/.gitignore,
	  dlls/hlink/Makefile.in, dlls/hlink/hlink.spec,
	  dlls/hlink/hlink_main.c:
	hlink: Add a stub implementation (based on Aric Stewart's code).

	* include/hlink.idl:
	hlink: Declare prototypes for some functions.

2006-06-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/winecfg/main.c:
	winecfg: Avoid unnecessary casts.

	* dlls/comctl32/propsheet.c:
	comctl32: Remove WM_SYSCOMMAND handler from PROPSHEET_DialogProc.

2006-06-06  Andrew Ziem <ahziem1@mailbolt.com>

	* include/winuser.h:
	include: Add SETWALLPAPER_DEFAULT to winuser.h.

2006-06-06  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/surface.c, dlls/wined3d/volume.c:
	wined3d: Return the result of QueryInterface in GetContainer.

	* dlls/wined3d/utils.c:
	wined3d: Remove a redundant break.

	* dlls/wined3d/device.c:
	wined3d: Don't hardcode type sizes for shader constants.

	* dlls/d3d9/tests/shader.c:
	d3d9: Add a test for setting / getting vertex shader constants.

2006-06-06  Robert Shearman <rob@codeweavers.com>

	* dlls/shdocvw/regsvr.c:
	shdocvw: Register some more documented classes that native also registers.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y:
	widl: Support coclass forward declarations.

	* include/exdisp.idl:
	include: Add two more coclasses to exdisp.idl.

2006-06-06  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/dnsapi.spec, dlls/dnsapi/main.c:
	dnsapi: Add stub implementations for the remaining documented functions.

2006-06-06  Magnus Lundborg <magnus.lundborg.6955@student.uu.se>

	* dlls/x11drv/xvidmode.c:
	x11drv: Declared two functions as static to avoid compiler warnings.

2006-06-06  Alexandre Julliard <julliard@winehq.org>

	* programs/winedbg/debug.l:
	Revert "winedbg: Remove useless NOCMD state."
	This reverts 92deacbe425bfd986a2cc3bf1e776aca02cf08c8 commit.

2006-06-02  Stefan Leichter <Stefan.Leichter@camLine.com>

	* tools/wine.inf:
	wine.inf: Added default values for .htm and .html file extension.

2006-06-04  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/oleaut32/safearray.c, dlls/oleaut32/tests/safearray.c:
	oleaut32: safearray: Convert dimension index at the API boundary.

2006-06-06  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Remove constant type field in stateblock.
	It is wrong to maintain a mapping from a constant index to a type
	field, because different constant types do not share an index -
	boolean constant 0 is supposed to co-exist with floating point
	constant 0, not replace it. Drawprim and other code using the type
	array to decide whether to look up a constant in bools, floats, or
	ints is wrong - you can't make that decision based on the index.

	* dlls/wined3d/vertexshader.c:
	wined3d: Rename vertex shader constants.
	From const%lu to C%lu for consistency (to match pshaders).

	* dlls/wined3d/pixelshader.c:
	wined3d: Add limits for ps_2_x.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Trace improvements.

	* dlls/wined3d/pixelshader.c:
	wined3d: pshader defi has 5 parameters.

2006-06-06  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/gdi/font.c:
	gdi: Don't treat a NULL rect as an empty rect in ExtTextOutW.

2006-06-05  James Hawkins <truiken@gmail.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Only BYREF DispCallFunc args whose input args are not BYREF should
	be changed.

	* dlls/oleaut32/typelib.c:
	oleaut32: Copy BYREF args directly if they have the same variant type.

2006-06-05  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/gdi/tests/bitmap.c:
	gdi: New tests for GetDIBits.
	New tests that check if GetDIBits works with a bitmap that is selected
	in a device context (works in Windows, should fail according to the
	API documentation)

2006-06-05  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvcrt/wcs.c:
	msvcrt: Write-strings warnings fix.

2006-06-06  Mike McCormack <mike@codeweavers.com>

	* programs/winecfg/audio.c:
	winecfg: Make some pointer casts win64 compliant.

	* programs/wineconsole/dialog.c:
	wineconsole: Use correct prototypes for dialog procs.

	* programs/wcmd/wcmdmain.c:
	wcmd: Fix a Win64 warning.

	* programs/taskmgr/affinity.c, programs/taskmgr/taskmgr.c:
	taskmgr: Use correct types for Win64.

	* programs/hh/main.c:
	hh: Cast GetProcAddress's return to supress a Win64 warning.

	* programs/winetest/gui.c:
	winetest: Fix dialog prototypes.

2006-06-05  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, dlls/Makefile.in, dlls/userenv/.gitignore,
	  dlls/userenv/Makefile.in, dlls/userenv/userenv.spec,
	  dlls/userenv/userenv_main.c:
	userenv: Add a stub implementation of userenv.dll.

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

	* dlls/kernel/tests/codepage.c:
	kernel/tests: Some tests for WideCharToMultiByte.

2006-06-06  Mike McCormack <mike@codeweavers.com>

	* dlls/advapi32/crypt.c:
	advapi32: Fix comment to match the function (thanks to Dan Kegel).

2006-06-05  Juan Lang <juan_lang@yahoo.com>

	* programs/winedbg/dbg.y, programs/winedbg/debug.l,
	  programs/winedbg/info.c:
	winedbg: Get rid of unused mode command.

2006-06-05  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/user/driver.c, dlls/user/user_private.h, dlls/user/win.c,
	  dlls/x11drv/clipboard.c, dlls/x11drv/event.c,
	  dlls/x11drv/winex11.drv.spec, dlls/x11drv/x11drv.h,
	  dlls/x11drv/x11drv_main.c:
	x11drv: Improve handling of the case where the clipboard is opened
	with a window from another thread or process.

	* include/ddrawi.h:
	include: Add DDHAL_UPDATEOVERLAYDATA structure.

2006-06-05  Huw Davies <huw@codeweavers.com>

	* dlls/msi/tests/package.c:
	msi: Add some integer condition tests.

2006-06-05  Karsten Elfenbein <kelfe@gmx.de>

	* dlls/kernel/tests/file.c:
	kernel/tests: More tests for FindFirstFile.

2006-06-05  Magnus Lundborg <magnus.lundborg.6955@student.uu.se>

	* programs/wordpad/wordpad.c:
	wordpad: Declare three functions as static to avoid compiler warnings.

2006-06-05  Mike McCormack <mike@codeweavers.com>

	* include/Makefile.in, include/hlguids.h:
	hlink: Add hlguids.h (based on a patch by Aric Stewart).

	* dlls/dnsapi/ns_parse.c:
	dnsapi: Fix the case where we have libresolv headers but no libraries.

2006-06-04  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c:
	wined3d: Render target locking fixes.

2006-06-04  Mike McCormack <mike@codeweavers.com>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction031.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction030.

2006-06-05  Hans Leidekker <hans@it.vu.nl>

	* dlls/msi/cond.y:
	msi: Fix some copy/paste bugs in the implementation of condition operators.

2006-06-04  Juan Lang <juan_lang@yahoo.com>

	* programs/winedbg/debug.l:
	winedbg: Remove useless NOCMD state.

	* dlls/user/winpos.c:
	user: Use SetPropW rather than SetPropA for internal property.

2006-06-05  Robert Shearman <rob@codeweavers.com>

	* dlls/msi/where.c:
	msi: An empty string is equivalent to nil, so handle this in the optimised
	WHERE_execute path.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement varying array NDR functions.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Don't call NdrBaseTypeMemorySize from within NdrBaseTypeUnmarshall.

2006-06-04  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/types.c:
	winedbg: Correct typedefs in type manipulations.

2006-06-04  Mike McCormack <mike@codeweavers.com>

	* programs/progman/dialog.c, programs/progman/group.c,
	  programs/progman/program.c:
	progman: Win64 fixes.

	* programs/cmdlgtst/cmdlgtst.c:
	cmdlgtst: Use correct types for Win64.

	* programs/winemine/dialog.c, programs/winemine/main.h:
	winemine: Fix dialog proc prototypes for Win64.

	* programs/winemine/dialog.c, programs/winemine/dialog.h,
	  programs/winemine/main.c:
	winemine: Remove dialog.h as it's redundant.

	* include/windef.h:
	include: Fix FARPROC, NEARPROC and PROC definitions for amd64.

2006-06-02  Juan Lang <juan_lang@yahoo.com>

	* programs/winedbg/debug.l:
	winedbg: Fix a crash on initial empty input.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/decode.c,
	  dlls/crypt32/encode.c, dlls/crypt32/tests/encode.c:
	crypt32: Implement X509_NAME_VALUE encoding/decoding.

2006-06-03  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c:
	shdocvw: Set focus in ui_activate.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
	  dlls/mshtml/nsio.c:
	mshtml: Use mime type reported by moniker if possible.

	* dlls/mshtml/navigate.c:
	mshtml: Return S_OK in OnStartBinding and OnStopBinding.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c:
	mshtml: Added beginning OnDataAvailable implementation.

	* dlls/mshtml/navigate.c, dlls/mshtml/persist.c:
	mshtml: Added begining binding code in IPersistMoniker::Load.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
	  dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c:
	mshtml: Set binding channel, listener and context in AsyncOpen.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c, dlls/mshtml/nsio.c,
	  dlls/mshtml/persist.c:
	mshtml: Store BSCallback in NSContainer and use it instead of load_call.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c:
	mshtml: Add create_nscallback function to allow using BSCallback out of
	navigate.c.

	* dlls/mshtml/nsio.c:
	mshtml: Move some code from before_async_open to AsyncOpen.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl, dlls/mshtml/persist.c:
	mshtml: Get rid of (currently disabled anyway) nsIWebBrowserStream.
	We have to handle it in another way.

2006-06-03  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/main.c:
	secur32: Don't fail on SECURITY_NETWORK_DREP, ntlm_auth handles this just fine.

2006-06-03  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Use task queue to handle OnDataAvailable call.

	* dlls/urlmon/binding.c:
	urlmon: Added OnResponse implementation.

2006-06-02  Marcus Meissner <marcus@jet.franken.de>

	* dlls/sane.ds/sane_main.c:
	sane.ds: Replace FIXME() by TRACE() on sane_exit.

2006-06-02  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c, dlls/rpcrt4/tests/rpc.c:
	rpcrt4: Don't try to resolve the name when constructing a protocol tower.
	Instead just fill it in with all zeros.

	* dlls/rpcrt4/ndr_misc.h:
	rpcrt4: Change ComputeConformance and ComputeVariance from macros to
	inline functions. Clear pStubMsg->Offset in ComputeVariance since it
	isn't set by ComputeConformanceOrVariance and so could be left filled
	with garbage.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: The lifetime of the binding handle stored in the context
	handle is independent of the binding handle used in the call that
	unmarshaled it, so we should use RpcBindingCopy to make a copy of it
	and then call RpcBindingFree later to free it.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix an incorrect format string pointer being passed in to
	ComputeVariance in NdrConformantVaryingStructBufferSize.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Skip over the right-hand-side data for the protocol floor so
	that we can parse the towers received from native rpcrt4.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Align the buffer correctly when marshaling and unmarshaling context
	handles.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Freeing a NULL context handle is allowed.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: NdrClientContextMarshall/Unmarshall should both increment the buffer
	pointer.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix the unmarshaling of pointers in conformant varying arrays,
	by passing the correct type format string to ReadConformance.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: CContext can be NULL in NDRCContextMarshall, in which case we should
	marshall all-zeros.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix the pointer count used when handling embedded pointers in varying
	arrays.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Print some more informative error messages when getaddrinfo fails.

2006-06-02  Mike McCormack <mike@codeweavers.com>

	* dlls/wininet/cookie.c, dlls/wininet/tests/internet.c:
	wininet: Simple tests for InternetGetCookie's parameters.

	* dlls/wininet/cookie.c, dlls/wininet/tests/internet.c:
	wininet: Fix up and test InternetSetCookie parameter checking.

	* dlls/wininet/internet.c:
	wininet: Remove some dead code (Coverity).

2006-06-02  Saulius Krasuckas <saulius2@ar.fi.lt>

	* dlls/advapi32/tests/registry.c:
	advapi32: Enable some tests and extend them to succeed on XP and 2003 SP1.

	* dlls/rsaenh/rsaenh.c:
	rasenh: Fix a copy&paste bug at passing only one string to RegSetValueExW()
	at a time.

2006-06-02  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shlfileop.c:
	shell32: Remove the now unused SHELL_DeleteFileA and SHELL_DeleteDirectoryA.

	* dlls/shell32/shell32_main.h, dlls/shell32/shfldr_fs.c,
	  dlls/shell32/shlfileop.c:
	shell32: Avoid Unicode->ANSI conversion when deleting a file.

2006-06-02  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/encode.c:
	crypt32: Add name value tests.
	Add tests for name values, and move tests for different string
	encodings to there.

2006-06-01  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/decode.c:
	crypt32: Remove exception handling from internal decoding functions.

	* dlls/crypt32/tests/encode.c:
	crypt32: Add a couple CRL encoding tests, one that shows a problem.

2006-06-02  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/user/listbox.c:
	user32: Fix selection handling for listboxes with LBS_EXTENDEDSEL style.

2006-05-25  Juris Smotrovs <juris.smotrovs@sets.lv>

	* dlls/user/defwnd.c, dlls/user/tests/msg.c, dlls/x11drv/winpos.c,
	  include/winpos.h:
	user32: Send WM_SIZE when window changes state between restored/min/maximized.

2006-06-01  Wino Rojo <winorojo@hotmail.com>

	* dlls/x11drv/opengl.c:
	x11drv: Fix for a BadMatch error.

2006-06-02  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Remove the check for unimplemented functions.

2006-05-28  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool.drv: Add GetPrintProcessorDirectoryW.

2006-06-01  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_epmap.c, dlls/rpcrt4/rpc_transport.c,
	  dlls/rpcrt4/tests/rpc.c:
	rpcrt4: All of the parameters to TowerExplode are optional.

	* dlls/rpcrt4/rpc_epmap.c, dlls/rpcrt4/rpcrt4.spec,
	  dlls/rpcrt4/tests/rpc.c:
	rpcrt4: Implement TowerConstruct and TowerExplode.
	Add some tests for these undocumented functions.

	* dlls/rpcrt4/epm_towers.h, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Add functions for generating and parsing the upper floors in
	endpoint-mapper towers for different transports.

	* dlls/rpcrt4/rpcrt4.spec, dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Implement I_RpcAllocate and I_RpcFree.

	* dlls/rpcrt4/ndr_midl.c:
	rpcrt4: Don't send the unused part of the allocated buffer.

	* dlls/rpcrt4/ndr_midl.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: NdrClientInitializeNew shouldn't clear all of the stub message, only
	selected fields.

2006-06-02  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/comctl32/header.c:
	comctl32/header: Check Null before accessing struct member.

2006-06-01  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Add EncryptMessage and DecryptMessage stubs.

2006-06-02  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/menu.c:
	user32: Popup menu position fixes.
	- Open large popup menus on the other side only if there's enough space
	- Open popup menus such that the y position of the first item in the
	popup menu is the same as the y position of the focused menu item.

2006-06-01  Emmanuel Maillard <mahanuu@opendarwin.org>

	* programs/winecfg/audio.c:
	winecfg: Add CoreAudio to audio drivers list.

2006-06-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/msg.c:
	user32: Replace PeekMessage loops in the PeekMessage test by explicit calls.
	Replace all 'while (PeekMessage()) DispatchMessage();' loops in the
	PeekMessage test by explicit calls to PeekMessage(), check queue
	status and processed messages after each call to see what is going on
	behind the scene.

2006-06-01  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/base64.c:
	crypt32: Make base64 tests loadable on win9x.

2006-06-01  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/shell32/shellpath.c:
	shell32: Add Fonts to user's shell folders list.

2006-06-01  Robert Shearman <rob@codeweavers.com>

	* tools/widl/widl.man.in:
	widl: Fix a typo in the man page.

	* tools/widl/typegen.c:
	widl: Properly size the return value procformat.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h, tools/widl/widltypes.h:
	widl: Only write one procformat string and one typeformat string per file.

2006-06-01  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi32: FreeType's idea of metrics has changed for bitmap fonts.

2006-06-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/winmm/winecoreaudio/audio.c, dlls/winmm/winecoreaudio/audiounit.c,
	  dlls/winmm/winecoreaudio/coreaudio.c,
	  dlls/winmm/winecoreaudio/coreaudio.h:
	winecoreaudio: Fixed the FSF address.

2006-05-24  Ken Thomases <ken@codeweavers.com>

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Don't CFAllocate buffer for port message.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Use unique name for message port.
	Use a unique port name for the message port to the message thread.
	Port names are system-global, so using a non-unique constant name
	prevents the CoreAudio driver from being used in multiple processes
	simultaneously.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: 8-bit Linear PCM data is unsigned.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Keep processing wavehdrs to satisfy AudioUnit data request.
	When fulfilling the output AudioUnit's request for audio data, don't
	stop when the current wavehdr is exhausted; advance to the next.  This
	addresses the buzzy quality of the sound.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Improve state tracking.
	Improved tracking of device state (stopped, playing, or paused).
	Also, tied starting and stopping the AudioUnit more directly to the
	state.	No need to change the state when preparing or unpreparing
	wavehdrs.  Pausing overrides both playing and stopped states; if
	stopped, pausing prevents output from starting when the program
	writes.  When, restarting from the paused state, the device starts
	playing if there are queued wavehdrs.  Otherwise, it goes to stopped
	state.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Miscellaneous cleanup.
	Miscellaneous cleanup: release resources when done with them; protect
	against null pointers; reduce redundant code; avoid potential integer
	underflow; clarify a do-nothing loop.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Fix race to open.
	Fixes a race condition (noted in a comment for wodOpen) when multiple
	threads try to open the same wave-out device simultaneously.
	Addressed by creating the device mutexes when the driver is
	initialized, instead of as each device is opened.  Then use the mutex
	to protect the open operation against races.  At the same time, made
	the mutexes recursive to avoid self-deadlocks the driver was
	encountering when reentered from the callback.

2006-06-01  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NDRCContext(Un)marshall and NDRCContextBinding.

2006-06-01  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface_gdi.c:
	wined3d: Adjust the video mem when dropping the pow2 size in GDISurface.

2006-05-31  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Remove no longer needed binding value in task_t.

	* dlls/urlmon/binding.c:
	urlmon: Use task queue for cross thread calls in on_progress.

	* dlls/urlmon/binding.c:
	urlmon: Use task queue in Switch implementation.

	* dlls/urlmon/binding.c:
	urlmon: Added task queue architecture and use it for OnProgress calls from
	Continue call.

	* dlls/urlmon/binding.c:
	urlmon: Make suse that every OnProgress call is in an apartment thread.

2006-05-31  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/crypt32/tests/cert.c:
	crypt32/tests: Write-strings warning fix.

2006-05-31  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c:
	comctl32: header: Update the rects in HEADER_Refresh if needed.

2006-05-31  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/Makefile.in, dlls/dnsapi/query.c:
	dnsapi: Fall back to a netbios query when a dns query fails.

2006-05-27  Andrew Ziem <ahziem1@mailbolt.com>

	* dlls/wsock32/service.c, dlls/wsock32/wsock32.spec, include/nspapi.h:
	wsock32: Added GetService{A,W} stubs.

2006-05-31  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Use FindMimeFromData to determine MIME type.

2006-05-31  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Add ENUM32 support to ComplexStructMemorySize.

2006-05-31  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Make sure to read the memid and the name offset from the
	correct offsets, after the function data, so add cFuncs to the offsets
	in MSFT_DoVars.
	Resolve referenced types for variables.
	Fixes initialisation of the dbgrid32 OCX.

	* dlls/oleaut32/typelib.c:
	oleaut32: Resolve referenced types for return values as well as parameters in
	MSFT typelibs.

	* tools/widl/parser.y:
	widl: Allow some more "reserved words" to be used as identifiers.

	* include/rpcdcep.h:
	include: Add some defines used by MIDL-generated code.

2006-05-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/winmm/winecoreaudio/audio.c, dlls/winmm/winecoreaudio/audiounit.c:
	winecoreaudio: Fixed a bunch of compiler warnings.

	* configure, configure.ac, dlls/dnsapi/ns_parse.c, include/config.h.in:
	dnsapi: Added check for _msg_ptr vs. _ptr member in ns_msg struct.

	* dlls/dnsapi/ns_name.c, dlls/dnsapi/ns_parse.c, dlls/dnsapi/query.c:
	dnsapi: Remove a bunch of unused functions that cause naming conflicts.

	* dlls/dnsapi/ns_name.c, dlls/dnsapi/query.c:
	dnsapi: Portability fixes.

2006-05-31  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/base64.c,
	  dlls/crypt32/crypt32.spec, dlls/crypt32/tests/.gitignore,
	  dlls/crypt32/tests/Makefile.in, dlls/crypt32/tests/base64.c,
	  include/wincrypt.h:
	crypt32: Implement CryptBinaryToStringA and CryptStringToBinaryA.
	Implement CryptBinaryToStringA and CryptStringToBinaryA based on Kai
	Blin's base64 encoder/decoder.

2006-05-31  Mike McCormack <mike@codeweavers.com>

	* programs/wineconsole/dialog.c:
	wineconsole: Store the font as a DWORD_PTR.

	* programs/wineconsole/user.c:
	wineconsole: Use a Get/SetWindowLongPtr to store a pointer.

	* programs/wordpad/wordpad.c:
	wordpad: Use GetWindowLongPtr to get the HINSTANCE.

2006-05-30  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added text/html filter.

	* dlls/urlmon/urlmon_main.c:
	urlmon: Use filters mechanism in FindMimeFromData.

2006-05-31  Troy Rollo <wine@troy.rollo.name>

	* dlls/ole32/storage32.c:
	ole32: Use STGM_WRITE when opening child storage to delete its children.

2006-05-30  Robert Reif <reif@earthlink.net>

	* dlls/winmm/tests/wave.c, dlls/winmm/tests/winmm_test.h:
	winmm: Always check for open and close enents in wave test.
	Always check for open and close events.
	Send WM_APP message to thread to terminate it rather than TerminateThread.
	Fix CreateThread/waveOutOpen race by waiting for background thread to
	run before waveOutOpen is called.
	Add more non-hardware supported formats.  There is a bug in wave
	mapper GetPosition when multiple headers are used and this helps
	trigger it.

2006-05-30  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/dnsapi/query.c:
	dnsapi: Fixed missing lock release on error path.

2006-05-30  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/tests/device.c:
	d3d8: Backport of the d3d9 swapchain test to d3d8.

	* dlls/d3d8/device.c:
	d3d8: Back buffer count fix.

2006-05-30  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/crypt32/cert.c:
	crypt32: Write-strings warning fix.

	* dlls/winmm/joystick/Makefile.in:
	winmm/joystick: joystick.c requires Unicode library.

2006-05-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/comctl32/propsheet.c:
	comctl32: propsheet: Fixed buffer sizes for LoadStringW.

2006-05-28  Emmanuel Maillard <mahanuu@opendarwin.org>

	* configure, configure.ac, dlls/Makefile.in,
	  dlls/winmm/winecoreaudio/.gitignore,
	  dlls/winmm/winecoreaudio/Makefile.in,
	  dlls/winmm/winecoreaudio/audio.c,
	  dlls/winmm/winecoreaudio/audiounit.c,
	  dlls/winmm/winecoreaudio/coreaudio.c,
	  dlls/winmm/winecoreaudio/coreaudio.h,
	  dlls/winmm/winecoreaudio/winecoreaudio.drv.spec, include/config.h.in:
	winecoreaudio: Initial Audio Driver for Mac OS X.

2006-05-29  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/dnsapi.h, dlls/dnsapi/dnsapi.spec, dlls/dnsapi/query.c:
	dnsapi: Implement DnsQuery_{A,UTF8,W}.

	* dlls/dnsapi/Makefile.in, dlls/dnsapi/dnsapi.h, dlls/dnsapi/ns_name.c,
	  dlls/dnsapi/ns_parse.c:
	dnsapi: Add DNS message parsing routines from BIND.

2006-05-30  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c:
	comctl32: header: Ignore out-of-range iOrder in SetItemT.

	* dlls/kernel/format_msg.c:
	kernel32: Prevent truncating characters to 8 bits in FormatMessageW.

2006-05-28  Andrew Ziem <ahziem1@mailbolt.com>

	* dlls/msi/tests/format.c:
	msi: Increase verbosity in some failing tests.

2006-05-30  Mike McCormack <mike@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Don't crash when querying NULL values.

	* dlls/wininet/tests/http.c:
	wininet: Add a test for basic authentication.

	* dlls/user/class.c, dlls/user/user32.spec, dlls/user/win.c:
	user32: Stub implementations for Win64's Get/Set LongPtr functions.

2006-05-29  Troy Rollo <wine@troy.rollo.name>

	* include/wine/wined3d_gl.h:
	wined3d: Add missing GL_VERTEX_SHADER_ARB definition.

2006-05-30  Troy Rollo <wine@troy.rollo.name>

	* dlls/comdlg32/filedlg.c:
	comdlg32: Prevent SEGV in FILEOPEN95_OnOpen when a malformed filter is passed.
	FILEOPEN95_OnOpen assumes that each item in the filter list returns a
	non-NULL pointer for CB_GETITEMDATA.

2006-05-29  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/wined3d/device.c:
	wined3d: Properly destroy texture object if we failed to create its surfaces.

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c, dlls/d3d9/directx.c,
	  dlls/d3d9/surface.c, dlls/d3d9/swapchain.c, dlls/d3d9/tests/device.c:
	d3d9: Add reference to the parent device for surfaces.
	Allow some objects to have no parent device.
	Tighten refcount tests and test refound decrement on Release.

2006-05-29  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Make UserMarshalFlags static.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: We should never pass an fMustAlloc value of TRUE into the
	unmarshaler routines of embedded complexes in complex struct and array
	unmarshaling.
	Fixes a regression caused by commit
	19fad8e71032707cb036239f69f085e1b0249d01, reported by Ulrich
	Dobramysl.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Make sure to set a unique pointer with an id of 0 to NULL when
	unmarshaling.

	* dlls/rpcrt4/ndr_fullpointer.c:
	rpcrt4: If the number of pointers is 0 for NdrFullPointerXlatInit then
	set the number of pointers to a large default, so that NumberOfBuckets
	doesn't end up less than zero.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Handle marshaling/unmarshaling full pointers.

	* dlls/rpcrt4/ndr_fullpointer.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: For full pointers the state consists of flags, so or new flags into
	the field instead of assigning.
	The return value of all full pointer functions that return an int
	depends on the passed in query type being a flag in the state.

2006-05-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/tests/treeview.c:
	comctl32/tests: Write-strings warnings fix.

2006-05-29  Hans Leidekker <hans@it.vu.nl>

	* dlls/msi/msi.c:
	msi: Implement MsiLocateComponent{A,W}.

2006-05-30  Mike McCormack <mike@codeweavers.com>

	* programs/msiexec/msiexec.c:
	msiexec: Improve 64bit compatibility.

2006-05-29  Mike McCormack <mike@codeweavers.com>

	* dlls/wldap32/add.c, dlls/wldap32/modify.c:
	wldap32: Fix unused variable warnings.

	* dlls/gdi/freetype.c:
	gdi32: Fix an unused variable warning.

2006-05-29  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Do not disable GL_BLEND when alpha blending is active.

	* dlls/wined3d/surface_gdi.c:
	wined3d: Release the memory in IWineGDISurface::PrivateSetup before calling
	GetDC.

2006-05-28  Robert Reif <reif@earthlink.net>

	* dlls/winmm/tests/wave.c:
	winmm: Add multiple header wave tests.
	The current wave tests only use a single header for playback.  Tests
	have been added to use multiple headers and to reuse them.  This is
	how streaming applications and direct sound use the wave api.

2006-05-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/tests/header.c, dlls/comctl32/tests/tab.c:
	comctl32/tests: Write-strings warning fix.

2006-05-27  Detlef Riekenberg <wine.dev@web.de>

	* DEVELOPERS-HINTS:
	DEVELOPER-HINTS: Some directories are renamed / removed / added.

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Use 0xdeadbeef as magic value.

	* dlls/winspool.drv/info.c:
	winspool: Documentation for GetPrintProcessorDirectory.

2006-05-28  Alexandre Julliard <julliard@winehq.org>

	* server/request.c:
	server: Return an error for invalid requests instead of killing the client
	process.

	* dlls/user/winproc.c:
	user: Fixed WM_ACTIVATEAPP mapping with null task handle.

	* Make.rules.in:
	Make.rules: Define datarootdir to avoid a configure warning.

2006-05-28  Frank Richter <frank.richter@gmail.com>

	* dlls/shdocvw/shdocvw_main.c:
	shdocvw: Install Mozilla control silently.

	* dlls/shdocvw/De.rc:
	shdocvw: Improve German translation.

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

	* dlls/secur32/tests/main.c:
	secur32: Cleaning up the authentication tests.
	This should make it easier to add encryption tests later.

2006-05-27  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Improve debug traces.

	* dlls/urlmon/binding.c, dlls/urlmon/tests/url.c:
	urlmon: Store STGMEDIUM in Binding object and set its pUnkForRelease.

	* dlls/urlmon/binding.c, dlls/urlmon/session.c, dlls/urlmon/urlmon_main.h:
	urlmon: Return IClassFactory in get_protocol_handler and fix get_protocol.

2006-05-27  Alexandre Julliard <julliard@winehq.org>

	* tools/sfnt2fnt.c:
	sfnt2fnt: Clean output files when aborting on a signal.

	* tools/make_ctests.c:
	make_ctests: Clean output files when aborting on an error or signal.

	* tools/fnt2fon.c:
	fnt2fon: Clean output files when aborting on an error or signal.

	* tools/bin2res.c:
	bin2res: Clean output files when aborting on an error or signal.

	* tools/widl/widl.c:
	widl: Clean output files when aborting on a signal.

	* tools/wrc/wrc.c:
	wrc: Clean output files when aborting on an error or signal.

	* tools/wmc/wmc.c:
	wmc: Clean output files when aborting on an error or signal.

2006-05-26  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/loader.c:
	ntdll: Free TLS pointers when exiting thread.

	* dlls/kernel/selector.c, dlls/ntdll/thread.c, include/winternl.h:
	ntdll/kernel32: Moved GetThreadSelectorEntry to ntdll.
	- implemented NtQueryInformationThread's ThreadDescriptorTableEntry
	information class
	- used it to implement the kernel32's equivalent (GetThreadSelectorEntry)

	* dlls/kernel/sync.c, dlls/ntdll/file.c, include/winbase.h,
	  include/wine/server_protocol.h, include/winternl.h,
	  server/named_pipe.c, server/protocol.def, server/trace.c:
	ntdll/kernel32: Pipe information.
	- implemented ntdll.NtQueryInformationFile's FilePipeLocalInformation control
	code
	- reimplemented kernel32.GetNamedPipeInfo on top of it
	- enhance current features to make this work both on client and server handles
	- now also returning the number of instances

2006-05-26  Jason Green <jave27@gmail.com>

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add ability to generate GLSL shader objects for vertex and pixel
	shaders.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c:
	wined3d: Final move of the GLSL registry check (hopefully).

2006-05-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/kernel32.spec, dlls/kernel/module.c, include/winbase.h:
	kernel32: Partial implementation of GetModuleHandleExA/W.

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll.spec, include/winternl.h:
	ntdll: Implemented RtlPcToFileHeader.

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

	* dlls/secur32/base64_codec.c:
	secur32: Fix wrong bit shift in the base64 encoder.
	Thanks to Juan Lang for catching this one.

2006-05-26  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_fullpointer.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Store the QueryType in the state table in NdrFullPointerQueryRefId.
	Implement NdrFullPointerFree.

	* dlls/rpcrt4/ndr_fullpointer.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Fix NdrFullPointerQueryRefId to make more tests pass.

	* dlls/rpcrt4/ndr_fullpointer.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Implement remaining part of NdrFullPointerQueryPointer and implement
	NdrFullPointerInsertRefId.

	* dlls/rpcrt4/Makefile.in, dlls/rpcrt4/ndr_fullpointer.c,
	  dlls/rpcrt4/rpcrt4.spec, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Implement some full pointer functions and add stubs for others.
	Add some tests.

2006-05-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Implement IWineD3DSurface::BltFast.

2006-05-26  Mike McCormack <mike@codeweavers.com>

	* dlls/secur32/ntlm.c:
	secur32: Avoid some code duplication.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NdrClientContext(Un)Marshall.

2006-05-26  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crl.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/tests/cert.c, include/wincrypt.h:
	crypt32: Implement CertVerifyCRLTimeValidity and partially implement
	CertVerifySubjectCertificateContext.

	* dlls/crypt32/context.c, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/store.c:
	crypt32: Combine redundant code.

2006-05-25  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi32: The font cache needs to discriminate whether the device can cope with
	bitmap fonts or not.

2006-05-26  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Even though FC_DEREFERENCE conformance is handled elsewhere in
	ComputeConformanceOrVariance it is still necessary to set the count
	variable to the value retrieved.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Return the actual status code sent back by the server, rather than
	RPC_S_CALL_FAILED.

2006-05-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface_gdi.c:
	wined3d: Fix IWineGDISurface::SaveSnapshot.

	* dlls/wined3d/surface.c:
	wined3d: Disable the depth test in UnlockRect

2006-05-26  Jason Green <jave27@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Fix regression introduced by recent multitexture patch.

2006-05-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/comctl32/theme_dialog.c:
	comctl32: Dialog procedures should be called with CallWindowProc.

	* dlls/user/controls.h, dlls/user/user16.c, dlls/user/win.c,
	  dlls/user/winproc.h:
	user: Only include winproc.h where necessary.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for the remaining messages.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for the listbox and combobox messages.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for the edit control messages.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for button and scrollbar messages.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for WM_GETTEXT, WM_SETTEXT and similar messages.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for the WM_DDE* messages.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for WM_MDIACTIVATE, WM_MDIGETACTIVE and
	WM_MDISETMENU.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for WM_COPYDATA, WM_GETDLGCODE and WM_NEXTMENU.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for WM_GETMINMAXINFO, WM_NCCALCSIZE and
	WM_WINDOWPOSCHANGING/CHANGED.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for WM_COMPARE/DELETE/MEASURE/DRAWITEM.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for WM_CREATE, WM_NCCREATE and WM_MDICREATE.

	* dlls/user/winproc.c:
	user: Added fast 16->32 mapping for the remaining messages.

	* dlls/user/winproc.c:
	user: Added fast 16->32 mapping for the WM_DDE* messages.

	* dlls/user/winproc.c:
	user: Added fast 16->32 mapping for WM_MDIACTIVATE, WM_MDIGETACTIVE and
	WM_MDISETMENU.

	* dlls/user/winproc.c:
	user: Added fast 16->32 mapping for WM_COPYDATA, WM_GETDLGCODE and WM_NEXTMENU.

	* dlls/user/winproc.c:
	user: Added fast 16->32 mapping for WM_GETMINMAXINFO, WM_NCCALCSIZE and
	WM_WINDOWPOSCHANGING/CHANGED.

	* dlls/user/winproc.c:
	user: Added fast 16->32 mapping for WM_COMPARE/DELETE/MEASURE/DRAWITEM.

	* dlls/user/winproc.c:
	user: Added fast 16->32 mapping for WM_CREATE, WM_NCCREATE and WM_MDICREATE.

	* include/wine/unicode.h:
	wine_unicode: Add prototypes for inline functions (from a patch by Andrew
	Talbot).

	* dlls/crypt32/context.c, dlls/gphoto2.ds/gphoto2_Ko.rc:
	Fixed a couple of instances of the old FSF address that crept back in.

2006-05-25  Phil Costin <philcostin@hotmail.com>

	* dlls/d3d9/d3d9.spec, dlls/d3d9/d3d9_main.c:
	wined3d: Create stub for D3DPERF_SetOptions function.

2006-05-25  Pierre d'Herbemont <stegefin@free.fr>

	* tools/wineprefixcreate.in:
	wineprefixcreate: Obtain wine and wineserver from the bindir, instead of
	relaying on the PATH.

2006-05-26  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c:
	comctl32: header: Put the new item in place of the hot divider instead of
	swapping.

2006-05-25  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c:
	comctl32: header: Draw the drag image and hot dividers while dragging an item.

	* dlls/comctl32/header.c:
	comctl32: header: Fix an order-related bug in HEADER_InternalHitTest.

	* dlls/comctl32/header.c:
	comctl32: header: Implement HDM_SETHOTDIVIDER.

	* dlls/comctl32/header.c:
	comctl32: header: Implement HDM_CREATEDRAGIMAGE.

2006-05-26  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/listview.c:
	comctl32: listview: Apply the HDS_DRAGDROP header style if needed.
	Apply the HDS_DRAGDROP header style if the listview has the
	LVS_EX_HEADERDRAGDROP. Block the columns reordering as the listview
	doesn't support them.

2006-05-25  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/serialize.c, dlls/crypt32/store.c:
	crypt32: Implement CertSerializeCRLStoreElement.

2006-05-26  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/mapi32/util.c:
	mapi32: Break out of the loop as soon as MSI call succeeds.

	* dlls/gdi/freetype.c:
	gdi: Add more const qualifiers.

2006-05-26  Jason Green <jave27@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c:
	wined3d: Move the GLSL registry check again.

2006-05-26  Mike McCormack <mike@codeweavers.com>

	* tools/winapi/tests.dat:
	winapi: IMAGE_OPTIONAL_HEADER has different members on x86-64.

	* include/rpcndr.h:
	rpcrt4: Remove unused IN and OUT macros.

2006-05-25  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/mapi32/mapi32.spec, dlls/mapi32/util.c:
	mapi32: Implement FGetComponentPath.

	* dlls/msi/msi.c:
	msi: Translate the resulting string only if the previous call succeeded.

2006-05-25  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Fix implementation of ReleaseBindInfo.

	* dlls/urlmon/binding.c:
	urlmon: Better pending read handling.

	* dlls/urlmon/binding.c:
	urlmon: Added Switch implementation.

	* dlls/urlmon/binding.c:
	urlmon: Added handling BINDDSTATUS_FINDINGSOURCE and BINDSTATUS_CONNECTING
	in ReportProgress.

	* dlls/urlmon/binding.c, dlls/urlmon/urlmon_main.c,
	  dlls/urlmon/urlmon_main.h:
	urlmon: Call OnProgress in apartment thread.

	* dlls/urlmon/binding.c:
	urlmon: Return MK_S_ASYNCHRONOUS if bindindg is asynchronous.

	* dlls/urlmon/binding.c, dlls/urlmon/tests/url.c:
	urlmon: Added ReportResult implementation.

	* dlls/urlmon/binding.c:
	urlmon: Added GetRootSecurityId and BeginningTransaction implementation.

2006-05-25  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/crl.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/store.c, dlls/crypt32/tests/store.c, include/wincrypt.h:
	crypt32: Add support for CRLs.

	* dlls/crypt32/cert.c:
	crypt32: Use public functions when finding certificates.

2006-05-25  Phil Costin <philcostin@hotmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Shader caps fix - code relocation.

2006-05-25  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
	wined3d: Dynamicly load GL_ARB_multitexture functions.

2006-05-25  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Small rhw vertex fix.
	Fix the one pixel displacement and move the glOrtho code in a common
	function.

2006-05-25  Alexandre Julliard <julliard@winehq.org>

	* configure:
	configure: Regenerated with autoconf 2.59d.

	* include/wine/debug.h, include/wine/library.h, include/wine/test.h,
	  include/wine/unicode.h:
	include: Prevent internal Wine headers from being used in tests.

	* dlls/wined3d/surface.c:
	wined3d: Fixed a compiler warning.

2006-05-25  Francois Gouget <fgouget@codeweavers.com>

	* dlls/ntdll/file.c:
	ntdll: Return FILE_DEVICE_CD_ROM_FILE_SYSTEM for supermount filesystems.

2006-05-24  Andrew Ziem <ahziem1@mailbolt.com>

	* dlls/wininet/http.c, dlls/wininet/urlcache.c:
	wininet: Constify data.

	* dlls/gdi/dib.c, dlls/gdi/freetype.c, dlls/gdi/tests/palette.c:
	gdi: Constify data.

2006-05-25  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/gdi/font.c:
	gdi: Get correct horizontal spacing value in the presence of ETO_PDY flag.

2006-05-24  Jason Green <jave27@gmail.com>

	* include/wine/wined3d_gl.h:
	wined3d: Add some more GLSL defines.

2006-05-25  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Stub implementations for NDRS marshalling functions.

	* dlls/crypt32/oid.c:
	crypt32: Fix a integer to pointer cast.

	* dlls/msi/action.c, dlls/msi/database.c:
	msi: Fix some pointer to integer casts.

	* dlls/kernel/console.c:
	kernel32: Fix some pointer to integer casts.

	* dlls/mapi32/mapi32_main.c:
	mapi32: Fix prototype of MAPILogon and MAPILogoff.

	* include/richedit.h:
	richedit: Fix prototype of the callback function.

2006-05-24  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h,
	  dlls/ole32/ftmarshal.c:
	ole32: Add a class factory for CLSID_InProcFreeMarshaler.

	* dlls/ole32/ftmarshal.c:
	ole32: Implement GetUnmarshalClass for the free-threaded marshaler and
	remove unnecessary unmarshaling code for the standard-marshal case -
	this is handled by CoUnmarshalInterface and CoReleaseMarshalData.

	* dlls/ole32/ftmarshal.c, dlls/ole32/tests/marshal.c:
	ole32: Implement table-strong marshaling and ReleaseMarshalData for the
	free-threaded marshaler.

	* dlls/ole32/ftmarshal.c, dlls/ole32/tests/marshal.c:
	ole32: Implement table-weak marshaling for the free-threaded marshaler.

	* dlls/ole32/ftmarshal.c:
	ole32: Release the standard marshal in the free-threaded marshaler's
	UnmarshalInterface function.

	* dlls/ole32/ftmarshal.c, dlls/ole32/tests/marshal.c:
	ole32: Add a rough implementation of the free-threaded marshaler MarshalInterface
	and UnmarshalInterface methods, with test cases.

	* dlls/ole32/ftmarshal.c:
	ole32: Fix the free-threaded marshaler when it has no outer unknown.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Set the Memory field of the stub message structure to the
	start of the memory that an embedded pointer is embedded in so that
	FC_POINTER conformance works correctly.

	* dlls/rpcrt4/ndr_stubless.c, include/rpcndr.h:
	rpcrt4: Implement explicit generic binding handles.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Move the getting of the client binding handle to a separate function.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Move the initialising of the stub message structure nearer to the top
	of NdrClientCall2.
	Set stubMsg.StackTop after calling the initialise function.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Store the arguments exclusively in stubMsg.StackTop.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Implement RpcBindingCopy.

	* dlls/ole32/compobj.c, dlls/uuid/uuid.c:
	uuid: Add some COM CLSIDs.

	* include/urlmon.idl:
	include: Add several more interfaces to urlmon.idl.

2006-05-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/misc.c:
	urlmon: Added registering name space test.

	* dlls/urlmon/binding.c, dlls/urlmon/internet.c, dlls/urlmon/session.c,
	  dlls/urlmon/urlmon_main.h:
	urlmon: Use registered protocols.

	* dlls/urlmon/session.c:
	urlmon: Added [Un]RegisterNamespace implementation.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/service.c:
	mshtml: The secret interface is CMarkup. Improve FIXMEs.

2006-05-24  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/store.c:
	crypt32: Add one more test of CertAddEncodedCertificateToStore.

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/store.c:
	crypt32: Move cert functions that don't depend on the implementation of stores
	to cert.c.

2006-05-25  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c:
	wined3d: Fog fixes.

2006-05-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Turn around the image in LockRect.

	* dlls/wined3d/device.c:
	wined3d: Silence the offscreen surface creation fixme.

	* dlls/wined3d/device.c:
	wined3d: Color keying emulation.

2006-05-24  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/d3d9/stateblock.c, dlls/d3d9/tests/device.c:
	d3d9: StateBlock is also created in EndStateBlock. With tests.

2006-05-24  Alexandre Julliard <julliard@winehq.org>

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

----------------------------------------------------------------
2006-05-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/usp10/tests/usp10.c:
	usp10: Fixed a compiler warning.

	* dlls/avifil32/Makefile.in, dlls/comdlg32/Makefile.in,
	  dlls/dmloader/Makefile.in, dlls/dmusic/Makefile.in,
	  dlls/dplayx/Makefile.in, dlls/hhctrl.ocx/Makefile.in,
	  dlls/mciavi32/Makefile.in, dlls/mciseq/Makefile.in,
	  dlls/mciwave/Makefile.in, dlls/midimap/Makefile.in,
	  dlls/msacm32.drv/Makefile.in, dlls/msdmo/Makefile.in,
	  dlls/odbc32/Makefile.in, dlls/rpcrt4/Makefile.in,
	  dlls/shdocvw/Makefile.in, dlls/urlmon/Makefile.in,
	  dlls/winmm/winearts/Makefile.in, dlls/winmm/winenas/Makefile.in,
	  dlls/winmm/wineoss/Makefile.in, programs/msiexec/Makefile.in,
	  programs/rundll32/Makefile.in, programs/winemenubuilder/Makefile.in:
	Link against libwine_unicode everywhere we use Unicode functions.

	* dlls/ntdll/tests/atom.c, dlls/ntdll/tests/env.c,
	  dlls/ntdll/tests/port.c, dlls/oleaut32/tests/vartype.c,
	  dlls/rpcrt4/tests/ndr_marshall.c, dlls/rpcrt4/tests/rpc.c,
	  dlls/shdocvw/tests/shortcut.c, dlls/shell32/tests/shlfolder.c,
	  dlls/shlwapi/tests/path.c:
	Tests should not use wine/unicode.h.

	* tools/widl/typelib.c, tools/widl/write_msft.c:
	widl: Get rid of unnecessary inclusion of unicode.h.

	* libs/wine/debug.c:
	libwine: Don't use libwine_unicode functions.

2006-05-24  Mike McCormack <mike@codeweavers.com>

	* dlls/gdi/font.c, dlls/msi/classes.c, dlls/quartz/filtergraph.c,
	  programs/winefile/winefile.c:
	Fixed more boolean comparisons against TRUE.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Add stub implementations for NDRCContext(Un)Marshall.

	* dlls/wininet/dialogs.c:
	wininet: Fix a possible NULL pointer deference.

2006-05-21  Detlef Riekenberg <wine.dev@web.de>

	* Makefile.in:
	Makefile.in: find needs a slash when the source dir is a symlink.

2006-05-22  Hwang YunSong <hys545@dreamwiz.com>

	* dlls/gphoto2.ds/gphoto2_Ko.rc, dlls/gphoto2.ds/rsrc.rc:
	gphoto2.ds: Added Korean resources.

2006-05-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/locale.c, dlls/ntdll/rtlstr.c, include/wine/unicode.h,
	  libs/unicode/string.c, libs/unicode/wine_unicode.def,
	  libs/unicode/wine_unicode.map:
	libwine_unicode: Renamed is_dbcs_leadbyte to wine_is_dbcs_leadbyte.

	* include/wine/unicode.h, libs/unicode/string.c,
	  libs/unicode/wine_unicode.def, libs/unicode/wine_unicode.map:
	libwine_unicode: Define all functions in the library even if they can be inlined.

2006-05-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/msg.c:
	user: Add a test to check the queue status if there is a pending
	posted message and the quit flag is set.

2006-05-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/swapchain.c, dlls/d3d9/tests/device.c, dlls/wined3d/device.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Swapchain and back buffer corrections + tests.

2006-05-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Set a default radio button.

	* dlls/msi/action.c:
	msi: Fix a possible memory leak.

2006-05-21  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  include/wine/wined3d_gl.h:
	wined3d: Fix ARB_imaging abuse.

2006-05-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/wined3d/device.c:
	wined3d: Fixed a couple of boolean comparisons against TRUE.

2006-05-23  Jason Green <jave27@gmail.com>

	* dlls/wined3d/baseshader.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Replaced USING_GLSL define with a new wined3d_settings option based
	on the registry.

	* dlls/wined3d/baseshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add function to print the infolog of a GLSL shader on errors.
	With assistance from H. Verbeet.

	* include/wine/wined3d_gl.h:
	wined3d: Added some GLSL defines and function prototypes.

2006-05-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: Write-strings warning fix.

2006-05-23  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/comctl32/comctl_Fr.rc, dlls/comdlg32/cdlg_Fr.rc,
	  dlls/msacm32/msacm_Fr.rc, programs/cmdlgtst/Fr.rc,
	  programs/notepad/Fr.rc, programs/progman/Fr.rc,
	  programs/regedit/Fr.rc, programs/taskmgr/Fr.rc,
	  programs/winefile/Fr.rc, programs/winhelp/Fr.rc,
	  programs/wordpad/Fr.rc:
	Uniformization of French main menu accelerators.

2006-05-23  Hans Leidekker <hans@it.vu.nl>

	* programs/uninstaller/Nl.rc, programs/uninstaller/rsrc.rc:
	uninstaller: Add Dutch resources.

2006-05-24  Marcus Meissner <marcus@jet.franken.de>

	* dlls/x11drv/xrender.c:
	x11drv: GdiAlphaBlend fix for X errors if width or height is 0.

2006-05-23  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/store.c, dlls/crypt32/tests/store.c:
	crypt32: Test and fix a couple CertAddCertificateContextToStore corner cases.

2006-05-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c:
	wined3d: Remove a double cap flag.

	* dlls/wined3d/surface.c:
	wined3d: Remove an unnecessary NULL check.

2006-05-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/persist.c:
	mshtml: Added stub implementation of IPersistStreamInit.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Added OLEIVERB_UIACTIVATE implementation.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Don't do verb that is already done.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Move UI activating to the separated function.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Move inplace activating code to the separated function.

	* dlls/shdocvw/factory.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser v1 implementation.

	* dlls/shdocvw/regsvr.c:
	shdocvw: Added WebBrowser v1 registration.

2006-05-23  Robert Shearman <rob@codeweavers.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Fix the loading of strings for the property sheet page by
	caching the ID of the string to load before overwriting it with an
	Alloc call.

2006-05-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/winproc.c:
	user: Reuse the fast A->W function to implement the 16->32W case.
	Get rid of the no longer needed 16->32W mapping functions.

	* dlls/user/winproc.c:
	user: Reuse the fast W->A function to implement the 32W->16 case.
	Get rid of the no longer needed 32W->16 mapping functions.

	* dlls/user/msg16.c, dlls/user/winproc.c, dlls/user/winproc.h:
	user: Use winproc callbacks for the remaining 16-bit messaging functions.

2006-05-22  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c:
	comctl32: header: Don't try to draw items outside the clipping rect.

	* dlls/comctl32/header.c:
	comctl32: header: Make the column resizing smooth in full drag mode.
	Make the column resizing smooth in full drag mode even for listview
	with lots of elements by redrawing only the resized column and calling
	UpdateWindow.

2006-05-22  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/context.c,
	  dlls/crypt32/crypt32_private.h, dlls/crypt32/store.c:
	crypt32: Abstract contexts.
	- create an abstract interface for contexts, and use it for certificates
	- create a simple context list, and use it for memory stores

2006-05-23  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Add stub for ScriptStringOut.

2006-05-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/swapchain.c:
	wined3d: Do not addref a NULL backbuffer in IWineD3DSwapChain::GetBackBuffer.

2006-05-23  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Uncomment test now that it works correctly.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Add another static.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix some comments and move the NdrSimpleType* functions out from
	amongst the NdrSimpleStruct* ones.

2006-05-23  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/winspool.drv/.gitignore, dlls/winspool.drv/Bg.rc,
	  dlls/winspool.drv/De.rc, dlls/winspool.drv/En.rc,
	  dlls/winspool.drv/Eo.rc, dlls/winspool.drv/Fi.rc,
	  dlls/winspool.drv/It.rc, dlls/winspool.drv/Ko.rc,
	  dlls/winspool.drv/Makefile.in, dlls/winspool.drv/Nl.rc,
	  dlls/winspool.drv/Ru.rc, dlls/winspool.drv/Tr.rc,
	  dlls/winspool.drv/info.c, dlls/winspool.drv/tests/.gitignore,
	  dlls/winspool.drv/tests/Makefile.in, dlls/winspool.drv/tests/info.c,
	  dlls/winspool.drv/winspool.drv.spec, dlls/winspool.drv/winspool.rc,
	  dlls/winspool.drv/wspool.c, dlls/winspool.drv/wspool.h,
	  dlls/winspool/.gitignore, dlls/winspool/Bg.rc, dlls/winspool/De.rc,
	  dlls/winspool/En.rc, dlls/winspool/Eo.rc, dlls/winspool/Fi.rc,
	  dlls/winspool/It.rc, dlls/winspool/Ko.rc, dlls/winspool/Makefile.in,
	  dlls/winspool/Nl.rc, dlls/winspool/Ru.rc, dlls/winspool/Tr.rc,
	  dlls/winspool/info.c, dlls/winspool/tests/.gitignore,
	  dlls/winspool/tests/Makefile.in, dlls/winspool/tests/info.c,
	  dlls/winspool/winspool.drv.spec, dlls/winspool/winspool.rc,
	  dlls/winspool/wspool.c, dlls/winspool/wspool.h,
	  programs/winetest/Makefile.in:
	winspool: Renamed the directory to winspool.drv.

	* configure, configure.ac, dlls/Makefile.in, dlls/wineps.drv/.gitignore,
	  dlls/wineps.drv/Makefile.in, dlls/wineps.drv/afm.c,
	  dlls/wineps.drv/afm2c.c, dlls/wineps.drv/bitblt.c,
	  dlls/wineps.drv/bitmap.c, dlls/wineps.drv/brush.c,
	  dlls/wineps.drv/builtin.c, dlls/wineps.drv/clipping.c,
	  dlls/wineps.drv/color.c, dlls/wineps.drv/data/AvantGarde_Book.c,
	  dlls/wineps.drv/data/AvantGarde_BookOblique.c,
	  dlls/wineps.drv/data/AvantGarde_Demi.c,
	  dlls/wineps.drv/data/AvantGarde_DemiOblique.c,
	  dlls/wineps.drv/data/Bookman_Demi.c,
	  dlls/wineps.drv/data/Bookman_DemiItalic.c,
	  dlls/wineps.drv/data/Bookman_Light.c,
	  dlls/wineps.drv/data/Bookman_LightItalic.c,
	  dlls/wineps.drv/data/COPYRIGHTS, dlls/wineps.drv/data/Courier.c,
	  dlls/wineps.drv/data/Courier_Bold.c,
	  dlls/wineps.drv/data/Courier_BoldOblique.c,
	  dlls/wineps.drv/data/Courier_Oblique.c,
	  dlls/wineps.drv/data/Helvetica.c,
	  dlls/wineps.drv/data/Helvetica_Bold.c,
	  dlls/wineps.drv/data/Helvetica_BoldOblique.c,
	  dlls/wineps.drv/data/Helvetica_Narrow.c,
	  dlls/wineps.drv/data/Helvetica_Narrow_Bold.c,
	  dlls/wineps.drv/data/Helvetica_Narrow_BoldOblique.c,
	  dlls/wineps.drv/data/Helvetica_Narrow_Oblique.c,
	  dlls/wineps.drv/data/Helvetica_Oblique.c,
	  dlls/wineps.drv/data/NewCenturySchlbk_Bold.c,
	  dlls/wineps.drv/data/NewCenturySchlbk_BoldItalic.c,
	  dlls/wineps.drv/data/NewCenturySchlbk_Italic.c,
	  dlls/wineps.drv/data/NewCenturySchlbk_Roman.c,
	  dlls/wineps.drv/data/Palatino_Bold.c,
	  dlls/wineps.drv/data/Palatino_BoldItalic.c,
	  dlls/wineps.drv/data/Palatino_Italic.c,
	  dlls/wineps.drv/data/Palatino_Roman.c, dlls/wineps.drv/data/Symbol.c,
	  dlls/wineps.drv/data/Times_Bold.c,
	  dlls/wineps.drv/data/Times_BoldItalic.c,
	  dlls/wineps.drv/data/Times_Italic.c,
	  dlls/wineps.drv/data/Times_Roman.c,
	  dlls/wineps.drv/data/ZapfChancery_MediumItalic.c,
	  dlls/wineps.drv/data/ZapfDingbats.c, dlls/wineps.drv/data/agl.c,
	  dlls/wineps.drv/data/agl.h, dlls/wineps.drv/download.c,
	  dlls/wineps.drv/driver.c, dlls/wineps.drv/encode.c,
	  dlls/wineps.drv/escape.c, dlls/wineps.drv/font.c,
	  dlls/wineps.drv/generic.ppd, dlls/wineps.drv/glyphlist.c,
	  dlls/wineps.drv/graphics.c, dlls/wineps.drv/init.c,
	  dlls/wineps.drv/mkagl.c, dlls/wineps.drv/objects.c,
	  dlls/wineps.drv/pen.c, dlls/wineps.drv/ppd.c, dlls/wineps.drv/ps.c,
	  dlls/wineps.drv/psdlg.h, dlls/wineps.drv/psdrv.h,
	  dlls/wineps.drv/rsrc.rc, dlls/wineps.drv/text.c,
	  dlls/wineps.drv/truetype.c, dlls/wineps.drv/type1.c,
	  dlls/wineps.drv/type1afm.c, dlls/wineps.drv/type42.c,
	  dlls/wineps.drv/wineps.drv.spec, dlls/wineps.drv/wineps16.drv.spec,
	  dlls/wineps.drv/wps_Bg.rc, dlls/wineps.drv/wps_Cs.rc,
	  dlls/wineps.drv/wps_De.rc, dlls/wineps.drv/wps_En.rc,
	  dlls/wineps.drv/wps_Es.rc, dlls/wineps.drv/wps_Fr.rc,
	  dlls/wineps.drv/wps_Hu.rc, dlls/wineps.drv/wps_It.rc,
	  dlls/wineps.drv/wps_Ja.rc, dlls/wineps.drv/wps_Ko.rc,
	  dlls/wineps.drv/wps_Nl.rc, dlls/wineps.drv/wps_No.rc,
	  dlls/wineps.drv/wps_Pt.rc, dlls/wineps.drv/wps_Ru.rc,
	  dlls/wineps.drv/wps_Si.rc, dlls/wineps.drv/wps_Sk.rc,
	  dlls/wineps.drv/wps_Tr.rc, dlls/wineps.drv/wps_xx.rc,
	  dlls/wineps/.gitignore, dlls/wineps/Makefile.in, dlls/wineps/afm.c,
	  dlls/wineps/afm2c.c, dlls/wineps/bitblt.c, dlls/wineps/bitmap.c,
	  dlls/wineps/brush.c, dlls/wineps/builtin.c, dlls/wineps/clipping.c,
	  dlls/wineps/color.c, dlls/wineps/data/AvantGarde_Book.c,
	  dlls/wineps/data/AvantGarde_BookOblique.c,
	  dlls/wineps/data/AvantGarde_Demi.c,
	  dlls/wineps/data/AvantGarde_DemiOblique.c,
	  dlls/wineps/data/Bookman_Demi.c,
	  dlls/wineps/data/Bookman_DemiItalic.c,
	  dlls/wineps/data/Bookman_Light.c,
	  dlls/wineps/data/Bookman_LightItalic.c, dlls/wineps/data/COPYRIGHTS,
	  dlls/wineps/data/Courier.c, dlls/wineps/data/Courier_Bold.c,
	  dlls/wineps/data/Courier_BoldOblique.c,
	  dlls/wineps/data/Courier_Oblique.c, dlls/wineps/data/Helvetica.c,
	  dlls/wineps/data/Helvetica_Bold.c,
	  dlls/wineps/data/Helvetica_BoldOblique.c,
	  dlls/wineps/data/Helvetica_Narrow.c,
	  dlls/wineps/data/Helvetica_Narrow_Bold.c,
	  dlls/wineps/data/Helvetica_Narrow_BoldOblique.c,
	  dlls/wineps/data/Helvetica_Narrow_Oblique.c,
	  dlls/wineps/data/Helvetica_Oblique.c,
	  dlls/wineps/data/NewCenturySchlbk_Bold.c,
	  dlls/wineps/data/NewCenturySchlbk_BoldItalic.c,
	  dlls/wineps/data/NewCenturySchlbk_Italic.c,
	  dlls/wineps/data/NewCenturySchlbk_Roman.c,
	  dlls/wineps/data/Palatino_Bold.c,
	  dlls/wineps/data/Palatino_BoldItalic.c,
	  dlls/wineps/data/Palatino_Italic.c,
	  dlls/wineps/data/Palatino_Roman.c, dlls/wineps/data/Symbol.c,
	  dlls/wineps/data/Times_Bold.c, dlls/wineps/data/Times_BoldItalic.c,
	  dlls/wineps/data/Times_Italic.c, dlls/wineps/data/Times_Roman.c,
	  dlls/wineps/data/ZapfChancery_MediumItalic.c,
	  dlls/wineps/data/ZapfDingbats.c, dlls/wineps/data/agl.c,
	  dlls/wineps/data/agl.h, dlls/wineps/download.c, dlls/wineps/driver.c,
	  dlls/wineps/encode.c, dlls/wineps/escape.c, dlls/wineps/font.c,
	  dlls/wineps/generic.ppd, dlls/wineps/glyphlist.c,
	  dlls/wineps/graphics.c, dlls/wineps/init.c, dlls/wineps/mkagl.c,
	  dlls/wineps/objects.c, dlls/wineps/pen.c, dlls/wineps/ppd.c,
	  dlls/wineps/ps.c, dlls/wineps/psdlg.h, dlls/wineps/psdrv.h,
	  dlls/wineps/rsrc.rc, dlls/wineps/text.c, dlls/wineps/truetype.c,
	  dlls/wineps/type1.c, dlls/wineps/type1afm.c, dlls/wineps/type42.c,
	  dlls/wineps/wineps.drv.spec, dlls/wineps/wineps16.drv.spec,
	  dlls/wineps/wps_Bg.rc, dlls/wineps/wps_Cs.rc, dlls/wineps/wps_De.rc,
	  dlls/wineps/wps_En.rc, dlls/wineps/wps_Es.rc, dlls/wineps/wps_Fr.rc,
	  dlls/wineps/wps_Hu.rc, dlls/wineps/wps_It.rc, dlls/wineps/wps_Ja.rc,
	  dlls/wineps/wps_Ko.rc, dlls/wineps/wps_Nl.rc, dlls/wineps/wps_No.rc,
	  dlls/wineps/wps_Pt.rc, dlls/wineps/wps_Ru.rc, dlls/wineps/wps_Si.rc,
	  dlls/wineps/wps_Sk.rc, dlls/wineps/wps_Tr.rc, dlls/wineps/wps_xx.rc:
	wineps: Renamed the directory to wineps.drv.

	* configure, configure.ac, dlls/Makefile.in, dlls/msisys.ocx/.gitignore,
	  dlls/msisys.ocx/Makefile.in, dlls/msisys.ocx/msisys.c,
	  dlls/msisys.ocx/msisys.ocx.spec, dlls/msisys/.gitignore,
	  dlls/msisys/Makefile.in, dlls/msisys/msisys.c,
	  dlls/msisys/msisys.ocx.spec:
	msisys: Renamed the directory to msisys.ocx.

2006-05-18  Jonathan Ernst <jonathan@ernstfamily.ch>

	* COPYING.LIB, LICENSE, aclocal.m4, dlls/activeds/activeds_main.c,
	  dlls/advapi32/advapi.c, dlls/advapi32/crypt.c, dlls/advapi32/crypt.h,
	  dlls/advapi32/crypt_arc4.c, dlls/advapi32/crypt_des.c,
	  dlls/advapi32/crypt_lmhash.c, dlls/advapi32/crypt_md4.c,
	  dlls/advapi32/crypt_md5.c, dlls/advapi32/crypt_sha.c,
	  dlls/advapi32/eventlog.c, dlls/advapi32/lsa.c,
	  dlls/advapi32/registry.c, dlls/advapi32/security.c,
	  dlls/advapi32/service.c, dlls/advapi32/tests/crypt.c,
	  dlls/advapi32/tests/crypt_lmhash.c, dlls/advapi32/tests/crypt_md4.c,
	  dlls/advapi32/tests/crypt_md5.c, dlls/advapi32/tests/crypt_sha.c,
	  dlls/advapi32/tests/lsa.c, dlls/advapi32/tests/registry.c,
	  dlls/advapi32/tests/security.c, dlls/advpack/advpack.c,
	  dlls/advpack/advpack_private.h, dlls/advpack/files.c,
	  dlls/advpack/install.c, dlls/advpack/reg.c,
	  dlls/advpack/tests/advpack.c, dlls/advpack/tests/files.c,
	  dlls/advpack/tests/install.c, dlls/amstream/amstream.c,
	  dlls/amstream/amstream_private.h, dlls/amstream/main.c,
	  dlls/amstream/mediastream.c, dlls/amstream/regsvr.c,
	  dlls/amstream/version.rc, dlls/atl/atl_main.c, dlls/atl/atlbase.h,
	  dlls/atl/atliface.idl, dlls/atl/registrar.c, dlls/atl/rsrc.rc,
	  dlls/avicap32/avicap32_main.c, dlls/avifil32/acmstream.c,
	  dlls/avifil32/api.c, dlls/avifil32/avifile.c,
	  dlls/avifil32/avifile_Cs.rc, dlls/avifil32/avifile_De.rc,
	  dlls/avifil32/avifile_En.rc, dlls/avifil32/avifile_Es.rc,
	  dlls/avifil32/avifile_Fr.rc, dlls/avifil32/avifile_Hu.rc,
	  dlls/avifil32/avifile_It.rc, dlls/avifil32/avifile_Ja.rc,
	  dlls/avifil32/avifile_Ko.rc, dlls/avifil32/avifile_Nl.rc,
	  dlls/avifil32/avifile_No.rc, dlls/avifil32/avifile_Pl.rc,
	  dlls/avifil32/avifile_Pt.rc, dlls/avifil32/avifile_Ru.rc,
	  dlls/avifil32/avifile_Si.rc, dlls/avifil32/avifile_Tr.rc,
	  dlls/avifil32/avifile_private.h, dlls/avifil32/editstream.c,
	  dlls/avifil32/extrachunk.c, dlls/avifil32/extrachunk.h,
	  dlls/avifil32/factory.c, dlls/avifil32/getframe.c,
	  dlls/avifil32/icmstream.c, dlls/avifil32/regsvr.c,
	  dlls/avifil32/rsrc.rc, dlls/avifil32/tmpfile.c,
	  dlls/avifil32/wavfile.c, dlls/cabinet/cabinet.h,
	  dlls/cabinet/cabinet.rc, dlls/cabinet/cabinet_main.c,
	  dlls/cabinet/fci.c, dlls/cabinet/fdi.c, dlls/cabinet/tests/extract.c,
	  dlls/capi2032/cap20wxx.c, dlls/capi2032/cap20wxx.h,
	  dlls/cards/cards.c, dlls/cards/cards.h, dlls/cards/cards.rc,
	  dlls/cards/version.rc, dlls/cfgmgr32/main.c,
	  dlls/comcat/comcat_main.c, dlls/comcat/comcat_private.h,
	  dlls/comcat/factory.c, dlls/comcat/information.c,
	  dlls/comcat/manager.c, dlls/comcat/register.c, dlls/comcat/regsvr.c,
	  dlls/comcat/version.rc, dlls/comctl32/animate.c,
	  dlls/comctl32/comboex.c, dlls/comctl32/comctl32.h,
	  dlls/comctl32/comctl32undoc.c, dlls/comctl32/comctl_Bg.rc,
	  dlls/comctl32/comctl_Cn.rc, dlls/comctl32/comctl_Cs.rc,
	  dlls/comctl32/comctl_De.rc, dlls/comctl32/comctl_En.rc,
	  dlls/comctl32/comctl_Eo.rc, dlls/comctl32/comctl_Es.rc,
	  dlls/comctl32/comctl_Fr.rc, dlls/comctl32/comctl_Hu.rc,
	  dlls/comctl32/comctl_It.rc, dlls/comctl32/comctl_Ja.rc,
	  dlls/comctl32/comctl_Ko.rc, dlls/comctl32/comctl_Nl.rc,
	  dlls/comctl32/comctl_No.rc, dlls/comctl32/comctl_Pl.rc,
	  dlls/comctl32/comctl_Pt.rc, dlls/comctl32/comctl_Ru.rc,
	  dlls/comctl32/comctl_Si.rc, dlls/comctl32/comctl_Sv.rc,
	  dlls/comctl32/comctl_Th.rc, dlls/comctl32/comctl_Tr.rc,
	  dlls/comctl32/comctl_Uk.rc, dlls/comctl32/commctrl.c,
	  dlls/comctl32/datetime.c, dlls/comctl32/dpa.c,
	  dlls/comctl32/draglist.c, dlls/comctl32/dsa.c,
	  dlls/comctl32/flatsb.c, dlls/comctl32/header.c,
	  dlls/comctl32/hotkey.c, dlls/comctl32/imagelist.c,
	  dlls/comctl32/imagelist.h, dlls/comctl32/ipaddress.c,
	  dlls/comctl32/listview.c, dlls/comctl32/monthcal.c,
	  dlls/comctl32/nativefont.c, dlls/comctl32/pager.c,
	  dlls/comctl32/progress.c, dlls/comctl32/propsheet.c,
	  dlls/comctl32/rebar.c, dlls/comctl32/rsrc.rc,
	  dlls/comctl32/smoothscroll.c, dlls/comctl32/status.c,
	  dlls/comctl32/string.c, dlls/comctl32/syslink.c, dlls/comctl32/tab.c,
	  dlls/comctl32/tests/comboex.c, dlls/comctl32/tests/dpa.c,
	  dlls/comctl32/tests/header.c, dlls/comctl32/tests/imagelist.c,
	  dlls/comctl32/tests/monthcal.c, dlls/comctl32/tests/mru.c,
	  dlls/comctl32/tests/progress.c, dlls/comctl32/tests/propsheet.c,
	  dlls/comctl32/tests/propsheet.rc, dlls/comctl32/tests/subclass.c,
	  dlls/comctl32/tests/tab.c, dlls/comctl32/tests/toolbar.c,
	  dlls/comctl32/tests/tooltips.c, dlls/comctl32/tests/treeview.c,
	  dlls/comctl32/tests/updown.c, dlls/comctl32/theme_combo.c,
	  dlls/comctl32/theme_dialog.c, dlls/comctl32/theme_edit.c,
	  dlls/comctl32/theme_listbox.c, dlls/comctl32/theming.c,
	  dlls/comctl32/toolbar.c, dlls/comctl32/tooltips.c,
	  dlls/comctl32/trackbar.c, dlls/comctl32/treeview.c,
	  dlls/comctl32/updown.c, dlls/comdlg32/cdlg.h, dlls/comdlg32/cdlg16.h,
	  dlls/comdlg32/cdlg32.c, dlls/comdlg32/cdlg_Bg.rc,
	  dlls/comdlg32/cdlg_Ca.rc, dlls/comdlg32/cdlg_Cn.rc,
	  dlls/comdlg32/cdlg_Cs.rc, dlls/comdlg32/cdlg_Da.rc,
	  dlls/comdlg32/cdlg_De.rc, dlls/comdlg32/cdlg_En.rc,
	  dlls/comdlg32/cdlg_Eo.rc, dlls/comdlg32/cdlg_Es.rc,
	  dlls/comdlg32/cdlg_Fi.rc, dlls/comdlg32/cdlg_Fr.rc,
	  dlls/comdlg32/cdlg_Hu.rc, dlls/comdlg32/cdlg_It.rc,
	  dlls/comdlg32/cdlg_Ja.rc, dlls/comdlg32/cdlg_Ko.rc,
	  dlls/comdlg32/cdlg_Nl.rc, dlls/comdlg32/cdlg_No.rc,
	  dlls/comdlg32/cdlg_Pl.rc, dlls/comdlg32/cdlg_Pt.rc,
	  dlls/comdlg32/cdlg_Ru.rc, dlls/comdlg32/cdlg_Si.rc,
	  dlls/comdlg32/cdlg_Sk.rc, dlls/comdlg32/cdlg_Sv.rc,
	  dlls/comdlg32/cdlg_Th.rc, dlls/comdlg32/cdlg_Tr.rc,
	  dlls/comdlg32/cdlg_Uk.rc, dlls/comdlg32/cdlg_Wa.rc,
	  dlls/comdlg32/cdlg_Zh.rc, dlls/comdlg32/cdlg_xx.rc,
	  dlls/comdlg32/colordlg.c, dlls/comdlg32/colordlg16.c,
	  dlls/comdlg32/filedlg.c, dlls/comdlg32/filedlg16.c,
	  dlls/comdlg32/filedlg31.c, dlls/comdlg32/filedlg31.h,
	  dlls/comdlg32/filedlgbrowser.c, dlls/comdlg32/filedlgbrowser.h,
	  dlls/comdlg32/filetitle.c, dlls/comdlg32/finddlg.c,
	  dlls/comdlg32/finddlg32.c, dlls/comdlg32/fontdlg.c,
	  dlls/comdlg32/fontdlg16.c, dlls/comdlg32/printdlg.c,
	  dlls/comdlg32/printdlg.h, dlls/comdlg32/printdlg16.c,
	  dlls/comdlg32/rsrc.rc, dlls/crtdll/crtdll_main.c,
	  dlls/crypt32/cert.c, dlls/crypt32/crypt32.rc,
	  dlls/crypt32/crypt32_De.rc, dlls/crypt32/crypt32_En.rc,
	  dlls/crypt32/crypt32_Ko.rc, dlls/crypt32/crypt32_No.rc,
	  dlls/crypt32/crypt32_private.h, dlls/crypt32/cryptres.h,
	  dlls/crypt32/decode.c, dlls/crypt32/encode.c, dlls/crypt32/main.c,
	  dlls/crypt32/oid.c, dlls/crypt32/proplist.c,
	  dlls/crypt32/protectdata.c, dlls/crypt32/serialize.c,
	  dlls/crypt32/store.c, dlls/crypt32/str.c, dlls/crypt32/tests/cert.c,
	  dlls/crypt32/tests/encode.c, dlls/crypt32/tests/main.c,
	  dlls/crypt32/tests/oid.c, dlls/crypt32/tests/protectdata.c,
	  dlls/crypt32/tests/store.c, dlls/crypt32/tests/str.c,
	  dlls/crypt32/version.rc, dlls/cryptdll/cryptdll.c,
	  dlls/ctl3d32/ctl3d.c, dlls/ctl3d32/ctl3d32.c,
	  dlls/d3d8/basetexture.c, dlls/d3d8/cubetexture.c,
	  dlls/d3d8/d3d8_main.c, dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/directx.c, dlls/d3d8/indexbuffer.c,
	  dlls/d3d8/pixelshader.c, dlls/d3d8/resource.c,
	  dlls/d3d8/stateblock.c, dlls/d3d8/surface.c, dlls/d3d8/swapchain.c,
	  dlls/d3d8/tests/device.c, dlls/d3d8/texture.c, dlls/d3d8/version.rc,
	  dlls/d3d8/vertexbuffer.c, dlls/d3d8/vertexshader.c,
	  dlls/d3d8/volume.c, dlls/d3d8/volumetexture.c,
	  dlls/d3d9/basetexture.c, dlls/d3d9/cubetexture.c,
	  dlls/d3d9/d3d9_main.c, dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/d3d9/indexbuffer.c,
	  dlls/d3d9/pixelshader.c, dlls/d3d9/query.c, dlls/d3d9/resource.c,
	  dlls/d3d9/stateblock.c, dlls/d3d9/surface.c, dlls/d3d9/swapchain.c,
	  dlls/d3d9/tests/device.c, dlls/d3d9/tests/shader.c,
	  dlls/d3d9/tests/stateblock.c, dlls/d3d9/tests/vertexdeclaration.c,
	  dlls/d3d9/texture.c, dlls/d3d9/version.rc, dlls/d3d9/vertexbuffer.c,
	  dlls/d3d9/vertexdeclaration.c, dlls/d3d9/vertexshader.c,
	  dlls/d3d9/volume.c, dlls/d3d9/volumetexture.c,
	  dlls/d3d9/vshaderdeclaration.c, dlls/d3dim/d3dim_main.c,
	  dlls/d3dim/version.rc, dlls/d3drm/d3drm_main.c,
	  dlls/d3drm/version.rc, dlls/d3dx8/d3dx8_main.c,
	  dlls/d3dx8/d3dx8core_private.h, dlls/d3dx8/d3dxbuffer.c,
	  dlls/d3dxof/d3dxof.c, dlls/d3dxof/d3dxof_private.h,
	  dlls/d3dxof/main.c, dlls/d3dxof/regsvr.c, dlls/d3dxof/version.rc,
	  dlls/dbghelp/coff.c, dlls/dbghelp/dbghelp.c,
	  dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/elf_module.c, dlls/dbghelp/image.c,
	  dlls/dbghelp/memory.c, dlls/dbghelp/minidump.c,
	  dlls/dbghelp/module.c, dlls/dbghelp/msc.c, dlls/dbghelp/mscvpdb.h,
	  dlls/dbghelp/path.c, dlls/dbghelp/pe_module.c, dlls/dbghelp/source.c,
	  dlls/dbghelp/stabs.c, dlls/dbghelp/stack.c, dlls/dbghelp/storage.c,
	  dlls/dbghelp/symbol.c, dlls/dbghelp/type.c, dlls/dbghelp/wdbgexts.h,
	  dlls/dciman32/dciman_main.c, dlls/ddraw/clipper.c,
	  dlls/ddraw/d3d_private.h, dlls/ddraw/d3d_utils.c,
	  dlls/ddraw/ddcomimpl.h, dlls/ddraw/ddraw_hal.c,
	  dlls/ddraw/ddraw_main.c, dlls/ddraw/ddraw_private.h,
	  dlls/ddraw/ddraw_thunks.c, dlls/ddraw/ddraw_user.c,
	  dlls/ddraw/ddraw_utils.c, dlls/ddraw/device_main.c,
	  dlls/ddraw/device_opengl.c, dlls/ddraw/direct3d_main.c,
	  dlls/ddraw/direct3d_opengl.c, dlls/ddraw/executebuffer.c,
	  dlls/ddraw/gl_api.h, dlls/ddraw/gl_private.h, dlls/ddraw/light.c,
	  dlls/ddraw/main.c, dlls/ddraw/material.c,
	  dlls/ddraw/opengl_private.h, dlls/ddraw/opengl_utils.c,
	  dlls/ddraw/palette_hal.c, dlls/ddraw/palette_main.c,
	  dlls/ddraw/regsvr.c, dlls/ddraw/surface_dib.c,
	  dlls/ddraw/surface_fakezbuffer.c, dlls/ddraw/surface_gamma.c,
	  dlls/ddraw/surface_hal.c, dlls/ddraw/surface_main.c,
	  dlls/ddraw/surface_thunks.c, dlls/ddraw/surface_user.c,
	  dlls/ddraw/surface_wndproc.c, dlls/ddraw/tests/d3d.c,
	  dlls/ddraw/tests/ddrawmodes.c, dlls/ddraw/tests/dsurface.c,
	  dlls/ddraw/texture.c, dlls/ddraw/version.rc,
	  dlls/ddraw/vertexbuffer.c, dlls/ddraw/viewport.c,
	  dlls/devenum/createdevenum.c, dlls/devenum/devenum.rc,
	  dlls/devenum/devenum_main.c, dlls/devenum/devenum_private.h,
	  dlls/devenum/factory.c, dlls/devenum/mediacatenum.c,
	  dlls/devenum/parsedisplayname.c, dlls/dinput/data_formats.c,
	  dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/dinput_main.c, dlls/dinput/dinput_private.h,
	  dlls/dinput/effect_linuxinput.c, dlls/dinput/joystick_linux.c,
	  dlls/dinput/joystick_linuxinput.c, dlls/dinput/keyboard.c,
	  dlls/dinput/mouse.c, dlls/dinput/regsvr.c,
	  dlls/dinput/tests/dinput_test.h, dlls/dinput/tests/joystick.c,
	  dlls/dinput/tests/keyboard.c, dlls/dinput/tests/mouse.c,
	  dlls/dinput/version.rc, dlls/dinput8/dinput8_main.c,
	  dlls/dinput8/version.rc, dlls/dmband/band.c, dlls/dmband/bandtrack.c,
	  dlls/dmband/dmband_main.c, dlls/dmband/dmband_private.h,
	  dlls/dmband/dmutils.c, dlls/dmband/dmutils.h, dlls/dmband/regsvr.c,
	  dlls/dmband/version.rc, dlls/dmcompos/chordmap.c,
	  dlls/dmcompos/chordmaptrack.c, dlls/dmcompos/composer.c,
	  dlls/dmcompos/dmcompos_main.c, dlls/dmcompos/dmcompos_private.h,
	  dlls/dmcompos/regsvr.c, dlls/dmcompos/signposttrack.c,
	  dlls/dmcompos/version.rc, dlls/dmime/audiopath.c,
	  dlls/dmime/dmime_main.c, dlls/dmime/dmime_private.h,
	  dlls/dmime/dmutils.c, dlls/dmime/dmutils.h, dlls/dmime/graph.c,
	  dlls/dmime/lyricstrack.c, dlls/dmime/markertrack.c,
	  dlls/dmime/paramcontroltrack.c, dlls/dmime/patterntrack.c,
	  dlls/dmime/performance.c, dlls/dmime/regsvr.c, dlls/dmime/segment.c,
	  dlls/dmime/segmentstate.c, dlls/dmime/segtriggertrack.c,
	  dlls/dmime/seqtrack.c, dlls/dmime/sysextrack.c,
	  dlls/dmime/tempotrack.c, dlls/dmime/timesigtrack.c,
	  dlls/dmime/tool.c, dlls/dmime/version.rc, dlls/dmime/wavetrack.c,
	  dlls/dmloader/classfactory.c, dlls/dmloader/container.c,
	  dlls/dmloader/debug.c, dlls/dmloader/debug.h,
	  dlls/dmloader/dmloader_main.c, dlls/dmloader/dmloader_private.h,
	  dlls/dmloader/loader.c, dlls/dmloader/loaderstream.c,
	  dlls/dmloader/regsvr.c, dlls/dmloader/version.rc,
	  dlls/dmscript/dmscript_main.c, dlls/dmscript/dmscript_private.h,
	  dlls/dmscript/regsvr.c, dlls/dmscript/script.c,
	  dlls/dmscript/scripttrack.c, dlls/dmscript/version.rc,
	  dlls/dmstyle/auditiontrack.c, dlls/dmstyle/chordtrack.c,
	  dlls/dmstyle/commandtrack.c, dlls/dmstyle/dmstyle_main.c,
	  dlls/dmstyle/dmstyle_private.h, dlls/dmstyle/dmutils.c,
	  dlls/dmstyle/dmutils.h, dlls/dmstyle/motiftrack.c,
	  dlls/dmstyle/mutetrack.c, dlls/dmstyle/regsvr.c,
	  dlls/dmstyle/style.c, dlls/dmstyle/styletrack.c,
	  dlls/dmstyle/version.rc, dlls/dmsynth/dmsynth_main.c,
	  dlls/dmsynth/dmsynth_private.h, dlls/dmsynth/regsvr.c,
	  dlls/dmsynth/synth.c, dlls/dmsynth/synthsink.c,
	  dlls/dmsynth/version.rc, dlls/dmusic/buffer.c, dlls/dmusic/clock.c,
	  dlls/dmusic/collection.c, dlls/dmusic/dmusic.c,
	  dlls/dmusic/dmusic_main.c, dlls/dmusic/dmusic_private.h,
	  dlls/dmusic/download.c, dlls/dmusic/downloadedinstrument.c,
	  dlls/dmusic/instrument.c, dlls/dmusic/port.c,
	  dlls/dmusic/portdownload.c, dlls/dmusic/regsvr.c, dlls/dmusic/thru.c,
	  dlls/dmusic/version.rc, dlls/dmusic32/dmusic32_main.c,
	  dlls/dmusic32/version.rc, dlls/dnsapi/dnsapi.h, dlls/dnsapi/main.c,
	  dlls/dnsapi/name.c, dlls/dnsapi/query.c, dlls/dnsapi/record.c,
	  dlls/dnsapi/tests/name.c, dlls/dnsapi/tests/record.c,
	  dlls/dplay/version.rc, dlls/dplayx/dpclassfactory.c,
	  dlls/dplayx/dpinit.h, dlls/dplayx/dplay.c,
	  dlls/dplayx/dplay_global.h, dlls/dplayx/dplaysp.c,
	  dlls/dplayx/dplaysp.h, dlls/dplayx/dplayx_global.c,
	  dlls/dplayx/dplayx_global.h, dlls/dplayx/dplayx_main.c,
	  dlls/dplayx/dplayx_messages.c, dlls/dplayx/dplayx_messages.h,
	  dlls/dplayx/dplayx_queue.h, dlls/dplayx/dplobby.c,
	  dlls/dplayx/lobbysp.c, dlls/dplayx/lobbysp.h,
	  dlls/dplayx/name_server.c, dlls/dplayx/name_server.h,
	  dlls/dplayx/regsvr.c, dlls/dplayx/version.rc, dlls/dpnet/address.c,
	  dlls/dpnet/client.c, dlls/dpnet/dpnet_main.c,
	  dlls/dpnet/dpnet_private.h, dlls/dpnet/peer.c, dlls/dpnet/regsvr.c,
	  dlls/dpnet/server.c, dlls/dpnet/version.rc, dlls/dpnhpast/main.c,
	  dlls/dpnhpast/version.rc, dlls/dsound/buffer.c,
	  dlls/dsound/capture.c, dlls/dsound/dsound.c,
	  dlls/dsound/dsound_main.c, dlls/dsound/dsound_private.h,
	  dlls/dsound/duplex.c, dlls/dsound/mixer.c, dlls/dsound/primary.c,
	  dlls/dsound/propset.c, dlls/dsound/regsvr.c, dlls/dsound/sound3d.c,
	  dlls/dsound/tests/capture.c, dlls/dsound/tests/ds3d.c,
	  dlls/dsound/tests/ds3d8.c, dlls/dsound/tests/dsound.c,
	  dlls/dsound/tests/dsound8.c, dlls/dsound/tests/dsound_test.h,
	  dlls/dsound/tests/duplex.c, dlls/dsound/tests/propset.c,
	  dlls/dsound/version.rc, dlls/dswave/dswave.c,
	  dlls/dswave/dswave_main.c, dlls/dswave/dswave_private.h,
	  dlls/dswave/regsvr.c, dlls/dswave/version.rc,
	  dlls/dxdiagn/container.c, dlls/dxdiagn/dxdiag_main.c,
	  dlls/dxdiagn/dxdiag_private.h, dlls/dxdiagn/provider.c,
	  dlls/dxdiagn/regsvr.c, dlls/dxdiagn/version.rc, dlls/dxerr8/dxerr8.c,
	  dlls/dxerr9/dxerr9.c, dlls/dxguid/dx8guid.c, dlls/dxguid/dx9guid.c,
	  dlls/dxguid/dxguid.c, dlls/gdi/bidi.c, dlls/gdi/bidi16.c,
	  dlls/gdi/bitblt.c, dlls/gdi/bitmap.c, dlls/gdi/brush.c,
	  dlls/gdi/clipping.c, dlls/gdi/dc.c, dlls/gdi/dib.c,
	  dlls/gdi/dispdib.c, dlls/gdi/driver.c, dlls/gdi/enhmetafile.c,
	  dlls/gdi/enhmfdrv/bitblt.c, dlls/gdi/enhmfdrv/dc.c,
	  dlls/gdi/enhmfdrv/enhmetafiledrv.h, dlls/gdi/enhmfdrv/graphics.c,
	  dlls/gdi/enhmfdrv/init.c, dlls/gdi/enhmfdrv/mapping.c,
	  dlls/gdi/enhmfdrv/objects.c, dlls/gdi/env.c, dlls/gdi/font.c,
	  dlls/gdi/freetype.c, dlls/gdi/gdi16.c, dlls/gdi/gdi_main.c,
	  dlls/gdi/gdi_private.h, dlls/gdi/gdiobj.c, dlls/gdi/icm.c,
	  dlls/gdi/mapping.c, dlls/gdi/metafile.c, dlls/gdi/metafile16.c,
	  dlls/gdi/mfdrv/bitblt.c, dlls/gdi/mfdrv/dc.c,
	  dlls/gdi/mfdrv/graphics.c, dlls/gdi/mfdrv/init.c,
	  dlls/gdi/mfdrv/mapping.c, dlls/gdi/mfdrv/metafiledrv.h,
	  dlls/gdi/mfdrv/objects.c, dlls/gdi/mfdrv/text.c, dlls/gdi/painting.c,
	  dlls/gdi/palette.c, dlls/gdi/path.c, dlls/gdi/pen.c,
	  dlls/gdi/printdrv.c, dlls/gdi/region.c, dlls/gdi/tests/bitmap.c,
	  dlls/gdi/tests/brush.c, dlls/gdi/tests/clipping.c,
	  dlls/gdi/tests/dc.c, dlls/gdi/tests/font.c, dlls/gdi/tests/gdiobj.c,
	  dlls/gdi/tests/mapping.c, dlls/gdi/tests/metafile.c,
	  dlls/gdi/tests/palette.c, dlls/gdi/tests/pen.c, dlls/gdi/version.rc,
	  dlls/gdi/version16.rc, dlls/gdi/wing.c, dlls/glu32/glu.c,
	  dlls/glut32/glut.c, dlls/gphoto2.ds/capability.c,
	  dlls/gphoto2.ds/ds_ctrl.c, dlls/gphoto2.ds/ds_image.c,
	  dlls/gphoto2.ds/gphoto2_En.rc, dlls/gphoto2.ds/gphoto2_Fr.rc,
	  dlls/gphoto2.ds/gphoto2_Nl.rc, dlls/gphoto2.ds/gphoto2_i.h,
	  dlls/gphoto2.ds/gphoto2_main.c, dlls/gphoto2.ds/resource.h,
	  dlls/gphoto2.ds/rsrc.rc, dlls/gphoto2.ds/ui.c, dlls/hhctrl.ocx/Cs.rc,
	  dlls/hhctrl.ocx/De.rc, dlls/hhctrl.ocx/En.rc, dlls/hhctrl.ocx/Fi.rc,
	  dlls/hhctrl.ocx/Hu.rc, dlls/hhctrl.ocx/Ko.rc, dlls/hhctrl.ocx/Nl.rc,
	  dlls/hhctrl.ocx/No.rc, dlls/hhctrl.ocx/Tr.rc, dlls/hhctrl.ocx/chm.c,
	  dlls/hhctrl.ocx/chm.h, dlls/hhctrl.ocx/help.c,
	  dlls/hhctrl.ocx/hhctrl.c, dlls/hhctrl.ocx/hhctrl.rc,
	  dlls/hhctrl.ocx/main.c, dlls/hhctrl.ocx/regsvr.c,
	  dlls/hhctrl.ocx/resource.h, dlls/hhctrl.ocx/version.rc,
	  dlls/hhctrl.ocx/webbrowser.c, dlls/hhctrl.ocx/webbrowser.h,
	  dlls/iccvid/iccvid.c, dlls/iccvid/iccvid_De.rc,
	  dlls/iccvid/iccvid_En.rc, dlls/iccvid/iccvid_Fr.rc,
	  dlls/iccvid/iccvid_Hu.rc, dlls/iccvid/iccvid_Ko.rc,
	  dlls/iccvid/iccvid_No.rc, dlls/iccvid/iccvid_Tr.rc,
	  dlls/iccvid/iccvid_private.h, dlls/iccvid/rsrc.rc,
	  dlls/icmp/icmp_main.c, dlls/ifsmgr.vxd/ifsmgr.c,
	  dlls/imaadp32.acm/imaadp32.c, dlls/imagehlp/access.c,
	  dlls/imagehlp/imagehlp_main.c, dlls/imagehlp/integrity.c,
	  dlls/imagehlp/internal.c, dlls/imagehlp/modify.c, dlls/imm32/imm.c,
	  dlls/iphlpapi/ifenum.c, dlls/iphlpapi/ifenum.h,
	  dlls/iphlpapi/iphlpapi_main.c, dlls/iphlpapi/ipstats.c,
	  dlls/iphlpapi/ipstats.h, dlls/iphlpapi/tests/iphlpapi.c,
	  dlls/itss/itss.c, dlls/itss/itsstor.h, dlls/itss/moniker.c,
	  dlls/itss/regsvr.c, dlls/itss/storage.c, dlls/kernel/actctx.c,
	  dlls/kernel/atom.c, dlls/kernel/atom16.c, dlls/kernel/change.c,
	  dlls/kernel/comm.c, dlls/kernel/computername.c,
	  dlls/kernel/console.c, dlls/kernel/console_private.h,
	  dlls/kernel/cpu.c, dlls/kernel/debugger.c, dlls/kernel/dosmem.c,
	  dlls/kernel/editline.c, dlls/kernel/environ.c, dlls/kernel/error16.c,
	  dlls/kernel/except.c, dlls/kernel/fiber.c, dlls/kernel/file.c,
	  dlls/kernel/file16.c, dlls/kernel/format_msg.c,
	  dlls/kernel/global16.c, dlls/kernel/heap.c, dlls/kernel/instr.c,
	  dlls/kernel/kernel.rc, dlls/kernel/kernel16.c,
	  dlls/kernel/kernel16_private.h, dlls/kernel/kernel_main.c,
	  dlls/kernel/kernel_private.h, dlls/kernel/lcformat.c,
	  dlls/kernel/local16.c, dlls/kernel/locale.c,
	  dlls/kernel/locale_rc.rc, dlls/kernel/lzexpand.c,
	  dlls/kernel/messages/winerr_enu.mc, dlls/kernel/module.c,
	  dlls/kernel/ne_module.c, dlls/kernel/ne_segment.c,
	  dlls/kernel/nls/afk.nls, dlls/kernel/nls/ara.nls,
	  dlls/kernel/nls/arb.nls, dlls/kernel/nls/are.nls,
	  dlls/kernel/nls/arg.nls, dlls/kernel/nls/arh.nls,
	  dlls/kernel/nls/ari.nls, dlls/kernel/nls/arj.nls,
	  dlls/kernel/nls/ark.nls, dlls/kernel/nls/arl.nls,
	  dlls/kernel/nls/arm.nls, dlls/kernel/nls/aro.nls,
	  dlls/kernel/nls/arq.nls, dlls/kernel/nls/ars.nls,
	  dlls/kernel/nls/art.nls, dlls/kernel/nls/aru.nls,
	  dlls/kernel/nls/ary.nls, dlls/kernel/nls/aze.nls,
	  dlls/kernel/nls/azl.nls, dlls/kernel/nls/bel.nls,
	  dlls/kernel/nls/bgr.nls, dlls/kernel/nls/brf.nls,
	  dlls/kernel/nls/cat.nls, dlls/kernel/nls/chs.nls,
	  dlls/kernel/nls/cht.nls, dlls/kernel/nls/cor.nls,
	  dlls/kernel/nls/csy.nls, dlls/kernel/nls/cym.nls,
	  dlls/kernel/nls/dan.nls, dlls/kernel/nls/dea.nls,
	  dlls/kernel/nls/dec.nls, dlls/kernel/nls/del.nls,
	  dlls/kernel/nls/des.nls, dlls/kernel/nls/deu.nls,
	  dlls/kernel/nls/div.nls, dlls/kernel/nls/ell.nls,
	  dlls/kernel/nls/ena.nls, dlls/kernel/nls/enb.nls,
	  dlls/kernel/nls/enc.nls, dlls/kernel/nls/eng.nls,
	  dlls/kernel/nls/eni.nls, dlls/kernel/nls/enj.nls,
	  dlls/kernel/nls/enl.nls, dlls/kernel/nls/enp.nls,
	  dlls/kernel/nls/ens.nls, dlls/kernel/nls/ent.nls,
	  dlls/kernel/nls/enu.nls, dlls/kernel/nls/enw.nls,
	  dlls/kernel/nls/enz.nls, dlls/kernel/nls/eox.nls,
	  dlls/kernel/nls/esa.nls, dlls/kernel/nls/esb.nls,
	  dlls/kernel/nls/esc.nls, dlls/kernel/nls/esd.nls,
	  dlls/kernel/nls/ese.nls, dlls/kernel/nls/esf.nls,
	  dlls/kernel/nls/esg.nls, dlls/kernel/nls/esh.nls,
	  dlls/kernel/nls/esi.nls, dlls/kernel/nls/esl.nls,
	  dlls/kernel/nls/esm.nls, dlls/kernel/nls/esn.nls,
	  dlls/kernel/nls/eso.nls, dlls/kernel/nls/esp.nls,
	  dlls/kernel/nls/esr.nls, dlls/kernel/nls/ess.nls,
	  dlls/kernel/nls/esu.nls, dlls/kernel/nls/esv.nls,
	  dlls/kernel/nls/esy.nls, dlls/kernel/nls/esz.nls,
	  dlls/kernel/nls/eti.nls, dlls/kernel/nls/euq.nls,
	  dlls/kernel/nls/far.nls, dlls/kernel/nls/fin.nls,
	  dlls/kernel/nls/fos.nls, dlls/kernel/nls/fra.nls,
	  dlls/kernel/nls/frb.nls, dlls/kernel/nls/frc.nls,
	  dlls/kernel/nls/frl.nls, dlls/kernel/nls/frm.nls,
	  dlls/kernel/nls/frs.nls, dlls/kernel/nls/gae.nls,
	  dlls/kernel/nls/gdh.nls, dlls/kernel/nls/gdv.nls,
	  dlls/kernel/nls/glc.nls, dlls/kernel/nls/guj.nls,
	  dlls/kernel/nls/heb.nls, dlls/kernel/nls/hin.nls,
	  dlls/kernel/nls/hrv.nls, dlls/kernel/nls/hun.nls,
	  dlls/kernel/nls/hye.nls, dlls/kernel/nls/ind.nls,
	  dlls/kernel/nls/isl.nls, dlls/kernel/nls/ita.nls,
	  dlls/kernel/nls/its.nls, dlls/kernel/nls/jpn.nls,
	  dlls/kernel/nls/kan.nls, dlls/kernel/nls/kat.nls,
	  dlls/kernel/nls/kkz.nls, dlls/kernel/nls/knk.nls,
	  dlls/kernel/nls/kor.nls, dlls/kernel/nls/kyr.nls,
	  dlls/kernel/nls/lth.nls, dlls/kernel/nls/lvi.nls,
	  dlls/kernel/nls/mar.nls, dlls/kernel/nls/mki.nls,
	  dlls/kernel/nls/mon.nls, dlls/kernel/nls/msb.nls,
	  dlls/kernel/nls/msl.nls, dlls/kernel/nls/nlb.nls,
	  dlls/kernel/nls/nld.nls, dlls/kernel/nls/nls.nls,
	  dlls/kernel/nls/non.nls, dlls/kernel/nls/nor.nls,
	  dlls/kernel/nls/pan.nls, dlls/kernel/nls/plk.nls,
	  dlls/kernel/nls/ptb.nls, dlls/kernel/nls/ptg.nls,
	  dlls/kernel/nls/rom.nls, dlls/kernel/nls/rus.nls,
	  dlls/kernel/nls/san.nls, dlls/kernel/nls/sky.nls,
	  dlls/kernel/nls/slv.nls, dlls/kernel/nls/sqi.nls,
	  dlls/kernel/nls/srb.nls, dlls/kernel/nls/srl.nls,
	  dlls/kernel/nls/sve.nls, dlls/kernel/nls/svf.nls,
	  dlls/kernel/nls/swk.nls, dlls/kernel/nls/syr.nls,
	  dlls/kernel/nls/tam.nls, dlls/kernel/nls/tel.nls,
	  dlls/kernel/nls/tha.nls, dlls/kernel/nls/trk.nls,
	  dlls/kernel/nls/ttt.nls, dlls/kernel/nls/ukr.nls,
	  dlls/kernel/nls/urd.nls, dlls/kernel/nls/uzb.nls,
	  dlls/kernel/nls/uzl.nls, dlls/kernel/nls/vit.nls,
	  dlls/kernel/nls/wal.nls, dlls/kernel/nls/zhh.nls,
	  dlls/kernel/nls/zhi.nls, dlls/kernel/nls/zhm.nls,
	  dlls/kernel/oldconfig.c, dlls/kernel/path.c, dlls/kernel/powermgnt.c,
	  dlls/kernel/process.c, dlls/kernel/profile.c, dlls/kernel/pthread.c,
	  dlls/kernel/registry16.c, dlls/kernel/relay16.c,
	  dlls/kernel/resource.c, dlls/kernel/resource16.c,
	  dlls/kernel/selector.c, dlls/kernel/snoop16.c, dlls/kernel/stress.c,
	  dlls/kernel/string.c, dlls/kernel/sync.c, dlls/kernel/syslevel.c,
	  dlls/kernel/system.c, dlls/kernel/tape.c, dlls/kernel/task.c,
	  dlls/kernel/tests/alloc.c, dlls/kernel/tests/atom.c,
	  dlls/kernel/tests/change.c, dlls/kernel/tests/codepage.c,
	  dlls/kernel/tests/comm.c, dlls/kernel/tests/console.c,
	  dlls/kernel/tests/directory.c, dlls/kernel/tests/drive.c,
	  dlls/kernel/tests/environ.c, dlls/kernel/tests/file.c,
	  dlls/kernel/tests/format_msg.c, dlls/kernel/tests/heap.c,
	  dlls/kernel/tests/locale.c, dlls/kernel/tests/mailslot.c,
	  dlls/kernel/tests/module.c, dlls/kernel/tests/path.c,
	  dlls/kernel/tests/pipe.c, dlls/kernel/tests/process.c,
	  dlls/kernel/tests/profile.c, dlls/kernel/tests/sync.c,
	  dlls/kernel/tests/thread.c, dlls/kernel/tests/time.c,
	  dlls/kernel/tests/timer.c, dlls/kernel/tests/toolhelp.c,
	  dlls/kernel/tests/virtual.c, dlls/kernel/tests/volume.c,
	  dlls/kernel/thread.c, dlls/kernel/thunk.c, dlls/kernel/time.c,
	  dlls/kernel/toolhelp.c, dlls/kernel/toolhelp.h,
	  dlls/kernel/toolhelp16.c, dlls/kernel/utthunk.c,
	  dlls/kernel/version.c, dlls/kernel/version.rc,
	  dlls/kernel/version16.rc, dlls/kernel/virtual.c,
	  dlls/kernel/volume.c, dlls/kernel/vxd.c, dlls/kernel/win87em.c,
	  dlls/kernel/windebug.c, dlls/kernel/wowthunk.c,
	  dlls/lz32/lzexpand16.c, dlls/lz32/tests/lzexpand_main.c,
	  dlls/make_dlls, dlls/mapi32/imalloc.c, dlls/mapi32/mapi32_main.c,
	  dlls/mapi32/prop.c, dlls/mapi32/sendmail.c,
	  dlls/mapi32/tests/imalloc.c, dlls/mapi32/tests/prop.c,
	  dlls/mapi32/tests/util.c, dlls/mapi32/util.c, dlls/mciavi32/info.c,
	  dlls/mciavi32/mciavi.c, dlls/mciavi32/mciavi_res.rc,
	  dlls/mciavi32/mmoutput.c, dlls/mciavi32/private_mciavi.h,
	  dlls/mciavi32/wnd.c, dlls/mcicda/mcicda.c, dlls/mciseq/mcimidi.c,
	  dlls/mciwave/mciwave.c, dlls/midimap/midimap.c, dlls/mlang/mlang.c,
	  dlls/mlang/regsvr.c, dlls/mlang/tests/mlang.c,
	  dlls/mmdevldr.vxd/mmdevldr.c, dlls/monodebg.vxd/monodebg.c,
	  dlls/mpr/auth.c, dlls/mpr/mpr.rc, dlls/mpr/mpr_Bg.rc,
	  dlls/mpr/mpr_Cs.rc, dlls/mpr/mpr_De.rc, dlls/mpr/mpr_En.rc,
	  dlls/mpr/mpr_Eo.rc, dlls/mpr/mpr_Es.rc, dlls/mpr/mpr_Fr.rc,
	  dlls/mpr/mpr_Hu.rc, dlls/mpr/mpr_It.rc, dlls/mpr/mpr_Ja.rc,
	  dlls/mpr/mpr_Ko.rc, dlls/mpr/mpr_Nl.rc, dlls/mpr/mpr_No.rc,
	  dlls/mpr/mpr_Pt.rc, dlls/mpr/mpr_Tr.rc, dlls/mpr/mpr_main.c,
	  dlls/mpr/mprres.h, dlls/mpr/multinet.c, dlls/mpr/netspi.h,
	  dlls/mpr/nps.c, dlls/mpr/pwcache.c, dlls/mpr/version.rc,
	  dlls/mpr/wnet.c, dlls/mpr/wnetpriv.h, dlls/mprapi/mprapi.c,
	  dlls/msacm32.drv/wavemap.c, dlls/msacm32/driver.c,
	  dlls/msacm32/filter.c, dlls/msacm32/format.c,
	  dlls/msacm32/internal.c, dlls/msacm32/msacm.rc,
	  dlls/msacm32/msacm32_main.c, dlls/msacm32/msacm_Cs.rc,
	  dlls/msacm32/msacm_De.rc, dlls/msacm32/msacm_En.rc,
	  dlls/msacm32/msacm_Es.rc, dlls/msacm32/msacm_Fr.rc,
	  dlls/msacm32/msacm_Hu.rc, dlls/msacm32/msacm_It.rc,
	  dlls/msacm32/msacm_Ja.rc, dlls/msacm32/msacm_Ko.rc,
	  dlls/msacm32/msacm_Nl.rc, dlls/msacm32/msacm_No.rc,
	  dlls/msacm32/msacm_Pl.rc, dlls/msacm32/msacm_Pt.rc,
	  dlls/msacm32/msacm_Tr.rc, dlls/msacm32/msacm_main.c,
	  dlls/msacm32/pcmconverter.c, dlls/msacm32/stream.c,
	  dlls/msacm32/tests/msacm.c, dlls/msacm32/wineacm.h,
	  dlls/msadp32.acm/msadp32.c, dlls/mscms/handle.c, dlls/mscms/icc.c,
	  dlls/mscms/mscms_main.c, dlls/mscms/mscms_priv.h,
	  dlls/mscms/profile.c, dlls/mscms/stub.c, dlls/mscms/tests/profile.c,
	  dlls/mscms/transform.c, dlls/mscms/version.rc, dlls/msdmo/dmoreg.c,
	  dlls/msdmo/dmort.c, dlls/msdmo/rsrc.rc, dlls/msg711.acm/msg711.c,
	  dlls/mshtml/Bg.rc, dlls/mshtml/De.rc, dlls/mshtml/En.rc,
	  dlls/mshtml/Fi.rc, dlls/mshtml/Fr.rc, dlls/mshtml/Hu.rc,
	  dlls/mshtml/Ko.rc, dlls/mshtml/Nl.rc, dlls/mshtml/No.rc,
	  dlls/mshtml/Tr.rc, dlls/mshtml/conpoint.c, dlls/mshtml/hlink.c,
	  dlls/mshtml/htmlbody.c, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/htmldoc3.c, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmlelem2.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/htmlnode.c, dlls/mshtml/htmlselect.c,
	  dlls/mshtml/htmltextarea.c, dlls/mshtml/htmltextcont.c,
	  dlls/mshtml/main.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/navigate.c, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c, dlls/mshtml/nsservice.c,
	  dlls/mshtml/oleobj.c, dlls/mshtml/olewnd.c, dlls/mshtml/persist.c,
	  dlls/mshtml/protocol.c, dlls/mshtml/resource.h, dlls/mshtml/rsrc.rc,
	  dlls/mshtml/service.c, dlls/mshtml/tests/htmldoc.c,
	  dlls/mshtml/tests/protocol.c, dlls/mshtml/view.c, dlls/msi/action.c,
	  dlls/msi/action.h, dlls/msi/appsearch.c, dlls/msi/classes.c,
	  dlls/msi/cond.y, dlls/msi/create.c, dlls/msi/custom.c,
	  dlls/msi/database.c, dlls/msi/delete.c, dlls/msi/dialog.c,
	  dlls/msi/distinct.c, dlls/msi/events.c, dlls/msi/files.c,
	  dlls/msi/format.c, dlls/msi/handle.c, dlls/msi/helpers.c,
	  dlls/msi/insert.c, dlls/msi/install.c, dlls/msi/msi.c,
	  dlls/msi/msi.rc, dlls/msi/msi_Bg.rc, dlls/msi/msi_De.rc,
	  dlls/msi/msi_En.rc, dlls/msi/msi_Eo.rc, dlls/msi/msi_Es.rc,
	  dlls/msi/msi_Fi.rc, dlls/msi/msi_Fr.rc, dlls/msi/msi_Hu.rc,
	  dlls/msi/msi_It.rc, dlls/msi/msi_Ko.rc, dlls/msi/msi_Nl.rc,
	  dlls/msi/msi_No.rc, dlls/msi/msi_Pt.rc, dlls/msi/msi_Tr.rc,
	  dlls/msi/msipriv.h, dlls/msi/msiquery.c, dlls/msi/order.c,
	  dlls/msi/package.c, dlls/msi/preview.c, dlls/msi/query.h,
	  dlls/msi/record.c, dlls/msi/registry.c, dlls/msi/regsvr.c,
	  dlls/msi/select.c, dlls/msi/source.c, dlls/msi/sql.y,
	  dlls/msi/string.c, dlls/msi/suminfo.c, dlls/msi/table.c,
	  dlls/msi/tests/db.c, dlls/msi/tests/format.c, dlls/msi/tests/msi.c,
	  dlls/msi/tests/package.c, dlls/msi/tests/record.c,
	  dlls/msi/tests/suminfo.c, dlls/msi/update.c, dlls/msi/upgrade.c,
	  dlls/msi/version.rc, dlls/msi/where.c, dlls/msimg32/msimg32_main.c,
	  dlls/msisys/msisys.c, dlls/msnet32/msnet_main.c,
	  dlls/msrle32/msrle32.c, dlls/msrle32/msrle_Bg.rc,
	  dlls/msrle32/msrle_Cs.rc, dlls/msrle32/msrle_De.rc,
	  dlls/msrle32/msrle_En.rc, dlls/msrle32/msrle_Es.rc,
	  dlls/msrle32/msrle_Fr.rc, dlls/msrle32/msrle_Hu.rc,
	  dlls/msrle32/msrle_It.rc, dlls/msrle32/msrle_Ja.rc,
	  dlls/msrle32/msrle_Ko.rc, dlls/msrle32/msrle_Nl.rc,
	  dlls/msrle32/msrle_No.rc, dlls/msrle32/msrle_Pt.rc,
	  dlls/msrle32/msrle_Ru.rc, dlls/msrle32/msrle_Si.rc,
	  dlls/msrle32/msrle_Tr.rc, dlls/msrle32/msrle_private.h,
	  dlls/msrle32/rsrc.rc, dlls/msvcrt/console.c, dlls/msvcrt/cpp.c,
	  dlls/msvcrt/cppexcept.c, dlls/msvcrt/cppexcept.h,
	  dlls/msvcrt/ctype.c, dlls/msvcrt/data.c, dlls/msvcrt/dir.c,
	  dlls/msvcrt/environ.c, dlls/msvcrt/errno.c, dlls/msvcrt/except.c,
	  dlls/msvcrt/exit.c, dlls/msvcrt/file.c, dlls/msvcrt/heap.c,
	  dlls/msvcrt/locale.c, dlls/msvcrt/lock.c, dlls/msvcrt/main.c,
	  dlls/msvcrt/math.c, dlls/msvcrt/mbcs.c, dlls/msvcrt/misc.c,
	  dlls/msvcrt/msvcrt.h, dlls/msvcrt/mtdll.h, dlls/msvcrt/process.c,
	  dlls/msvcrt/rsrc.rc, dlls/msvcrt/scanf.c, dlls/msvcrt/scanf.h,
	  dlls/msvcrt/string.c, dlls/msvcrt/tests/cpp.c,
	  dlls/msvcrt/tests/dir.c, dlls/msvcrt/tests/environ.c,
	  dlls/msvcrt/tests/file.c, dlls/msvcrt/tests/headers.c,
	  dlls/msvcrt/tests/heap.c, dlls/msvcrt/tests/printf.c,
	  dlls/msvcrt/tests/scanf.c, dlls/msvcrt/tests/string.c,
	  dlls/msvcrt/tests/time.c, dlls/msvcrt/thread.c, dlls/msvcrt/time.c,
	  dlls/msvcrt/undname.c, dlls/msvcrt/wcs.c, dlls/msvcrt20/msvcrt20.c,
	  dlls/msvcrtd/debug.c, dlls/msvcrtd/tests/debug.c,
	  dlls/msvfw32/drawdib.c, dlls/msvfw32/mciwnd.c,
	  dlls/msvfw32/msvfw32_De.rc, dlls/msvfw32/msvfw32_En.rc,
	  dlls/msvfw32/msvfw32_Fr.rc, dlls/msvfw32/msvfw32_Hu.rc,
	  dlls/msvfw32/msvfw32_Ko.rc, dlls/msvfw32/msvfw32_No.rc,
	  dlls/msvfw32/msvfw32_Tr.rc, dlls/msvfw32/msvideo16.c,
	  dlls/msvfw32/msvideo_main.c, dlls/msvfw32/msvideo_private.h,
	  dlls/msvfw32/rsrc.rc, dlls/msvfw32/vfw16.h,
	  dlls/msvidc32/msvidc32_De.rc, dlls/msvidc32/msvidc32_En.rc,
	  dlls/msvidc32/msvidc32_Fr.rc, dlls/msvidc32/msvidc32_Hu.rc,
	  dlls/msvidc32/msvidc32_Ko.rc, dlls/msvidc32/msvidc32_No.rc,
	  dlls/msvidc32/msvidc32_Tr.rc, dlls/msvidc32/msvidc32_private.h,
	  dlls/msvidc32/msvideo1.c, dlls/msvidc32/rsrc.rc,
	  dlls/mswsock/mswsock.c, dlls/mswsock/version.rc,
	  dlls/msxml3/attribute.c, dlls/msxml3/comment.c, dlls/msxml3/domdoc.c,
	  dlls/msxml3/element.c, dlls/msxml3/factory.c, dlls/msxml3/main.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/node.c,
	  dlls/msxml3/nodelist.c, dlls/msxml3/nodemap.c,
	  dlls/msxml3/parseerror.c, dlls/msxml3/tests/domdoc.c,
	  dlls/msxml3/text.c, dlls/netapi32/access.c, dlls/netapi32/apibuf.c,
	  dlls/netapi32/browsr.c, dlls/netapi32/ds.c,
	  dlls/netapi32/nbcmdqueue.c, dlls/netapi32/nbcmdqueue.h,
	  dlls/netapi32/nbnamecache.c, dlls/netapi32/nbnamecache.h,
	  dlls/netapi32/nbt.c, dlls/netapi32/netapi32.c,
	  dlls/netapi32/netapi32_misc.h, dlls/netapi32/netbios.c,
	  dlls/netapi32/netbios.h, dlls/netapi32/share.c,
	  dlls/netapi32/tests/access.c, dlls/netapi32/tests/apibuf.c,
	  dlls/netapi32/tests/ds.c, dlls/netapi32/tests/wksta.c,
	  dlls/netapi32/wksta.c, dlls/newdev/main.c, dlls/ntdll/atom.c,
	  dlls/ntdll/cdrom.c, dlls/ntdll/critsection.c,
	  dlls/ntdll/debugbuffer.c, dlls/ntdll/debugtools.c,
	  dlls/ntdll/directory.c, dlls/ntdll/env.c, dlls/ntdll/error.c,
	  dlls/ntdll/exception.c, dlls/ntdll/file.c, dlls/ntdll/handletable.c,
	  dlls/ntdll/heap.c, dlls/ntdll/large_int.c, dlls/ntdll/loader.c,
	  dlls/ntdll/loadorder.c, dlls/ntdll/misc.c, dlls/ntdll/nt.c,
	  dlls/ntdll/ntdll_misc.h, dlls/ntdll/om.c, dlls/ntdll/path.c,
	  dlls/ntdll/process.c, dlls/ntdll/reg.c, dlls/ntdll/relay.c,
	  dlls/ntdll/resource.c, dlls/ntdll/rtl.c, dlls/ntdll/rtlbitmap.c,
	  dlls/ntdll/rtlstr.c, dlls/ntdll/sec.c, dlls/ntdll/serial.c,
	  dlls/ntdll/server.c, dlls/ntdll/signal_i386.c,
	  dlls/ntdll/signal_powerpc.c, dlls/ntdll/signal_sparc.c,
	  dlls/ntdll/signal_x86_64.c, dlls/ntdll/string.c, dlls/ntdll/sync.c,
	  dlls/ntdll/tape.c, dlls/ntdll/tests/atom.c,
	  dlls/ntdll/tests/change.c, dlls/ntdll/tests/env.c,
	  dlls/ntdll/tests/error.c, dlls/ntdll/tests/exception.c,
	  dlls/ntdll/tests/info.c, dlls/ntdll/tests/large_int.c,
	  dlls/ntdll/tests/ntdll_test.h, dlls/ntdll/tests/om.c,
	  dlls/ntdll/tests/path.c, dlls/ntdll/tests/port.c,
	  dlls/ntdll/tests/reg.c, dlls/ntdll/tests/rtl.c,
	  dlls/ntdll/tests/rtlbitmap.c, dlls/ntdll/tests/rtlstr.c,
	  dlls/ntdll/tests/string.c, dlls/ntdll/tests/time.c,
	  dlls/ntdll/thread.c, dlls/ntdll/threadpool.c, dlls/ntdll/time.c,
	  dlls/ntdll/version.c, dlls/ntdll/virtual.c, dlls/ntdll/wcstring.c,
	  dlls/ntdsapi/ntdsapi.c, dlls/objsel/factory.c, dlls/objsel/objsel.c,
	  dlls/objsel/objsel.rc, dlls/objsel/objsel_private.h,
	  dlls/objsel/regsvr.c, dlls/odbc32/proxyodbc.c,
	  dlls/odbc32/proxyodbc.h, dlls/odbccp32/odbccp32.c,
	  dlls/ole32/antimoniker.c, dlls/ole32/bindctx.c,
	  dlls/ole32/classmoniker.c, dlls/ole32/clipboard.c,
	  dlls/ole32/compobj.c, dlls/ole32/compobj_private.h,
	  dlls/ole32/compositemoniker.c, dlls/ole32/datacache.c,
	  dlls/ole32/dcom.idl, dlls/ole32/defaulthandler.c,
	  dlls/ole32/dictionary.c, dlls/ole32/dictionary.h,
	  dlls/ole32/errorinfo.c, dlls/ole32/filemoniker.c,
	  dlls/ole32/ftmarshal.c, dlls/ole32/git.c, dlls/ole32/hglobalstream.c,
	  dlls/ole32/ifs.c, dlls/ole32/ifs.h, dlls/ole32/itemmoniker.c,
	  dlls/ole32/marshal.c, dlls/ole32/memlockbytes.c,
	  dlls/ole32/memlockbytes16.c, dlls/ole32/moniker.c,
	  dlls/ole32/ole16.c, dlls/ole32/ole2.c, dlls/ole32/ole2_16.c,
	  dlls/ole32/ole2impl.c, dlls/ole32/ole2nls.c, dlls/ole32/ole2stubs.c,
	  dlls/ole32/ole32_main.c, dlls/ole32/ole32res.rc, dlls/ole32/oleobj.c,
	  dlls/ole32/oleproxy.c, dlls/ole32/olestd.h, dlls/ole32/regsvr.c,
	  dlls/ole32/rpc.c, dlls/ole32/stg_bigblockfile.c,
	  dlls/ole32/stg_prop.c, dlls/ole32/stg_stream.c, dlls/ole32/storage.c,
	  dlls/ole32/storage32.c, dlls/ole32/storage32.h,
	  dlls/ole32/stubmanager.c, dlls/ole32/tests/clipboard.c,
	  dlls/ole32/tests/compobj.c, dlls/ole32/tests/marshal.c,
	  dlls/ole32/tests/moniker.c, dlls/ole32/tests/propvariant.c,
	  dlls/ole32/tests/stg_prop.c, dlls/ole32/tests/storage32.c,
	  dlls/ole32/usrmarshal.c, dlls/ole32/version.rc, dlls/oleacc/main.c,
	  dlls/oleaut32/connpt.c, dlls/oleaut32/connpt.h,
	  dlls/oleaut32/dispatch.c, dlls/oleaut32/hash.c,
	  dlls/oleaut32/ole2disp.c, dlls/oleaut32/ole2disp.h,
	  dlls/oleaut32/oleaut.c, dlls/oleaut32/oleaut32.rc,
	  dlls/oleaut32/oleaut32_Bg.rc, dlls/oleaut32/oleaut32_Cz.rc,
	  dlls/oleaut32/oleaut32_De.rc, dlls/oleaut32/oleaut32_Dk.rc,
	  dlls/oleaut32/oleaut32_En.rc, dlls/oleaut32/oleaut32_Eo.rc,
	  dlls/oleaut32/oleaut32_Es.rc, dlls/oleaut32/oleaut32_Fr.rc,
	  dlls/oleaut32/oleaut32_Hu.rc, dlls/oleaut32/oleaut32_It.rc,
	  dlls/oleaut32/oleaut32_Ko.rc, dlls/oleaut32/oleaut32_Nl.rc,
	  dlls/oleaut32/oleaut32_No.rc, dlls/oleaut32/oleaut32_Pl.rc,
	  dlls/oleaut32/oleaut32_Pt.rc, dlls/oleaut32/oleaut32_Ru.rc,
	  dlls/oleaut32/oleaut32_Sv.rc, dlls/oleaut32/oleaut32_Th.rc,
	  dlls/oleaut32/oleaut32_Tr.rc, dlls/oleaut32/olefont.c,
	  dlls/oleaut32/olepicture.c, dlls/oleaut32/recinfo.c,
	  dlls/oleaut32/regsvr.c, dlls/oleaut32/resource.h,
	  dlls/oleaut32/safearray.c, dlls/oleaut32/stubs.c,
	  dlls/oleaut32/tests/olefont.c, dlls/oleaut32/tests/olepicture.c,
	  dlls/oleaut32/tests/safearray.c, dlls/oleaut32/tests/typelib.c,
	  dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/tests/vartest.c,
	  dlls/oleaut32/tests/vartype.c, dlls/oleaut32/tmarshal.c,
	  dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h,
	  dlls/oleaut32/typelib16.c, dlls/oleaut32/typelib2.c,
	  dlls/oleaut32/usrmarshal.c, dlls/oleaut32/varformat.c,
	  dlls/oleaut32/variant.c, dlls/oleaut32/variant.h,
	  dlls/oleaut32/vartype.c, dlls/oleaut32/version.rc,
	  dlls/olecli32/olecli16.c, dlls/olecli32/olecli_main.c,
	  dlls/oledlg/insobjdlg.c, dlls/oledlg/oledlg_Cs.rc,
	  dlls/oledlg/oledlg_De.rc, dlls/oledlg/oledlg_En.rc,
	  dlls/oledlg/oledlg_Es.rc, dlls/oledlg/oledlg_Fr.rc,
	  dlls/oledlg/oledlg_Hu.rc, dlls/oledlg/oledlg_It.rc,
	  dlls/oledlg/oledlg_Ja.rc, dlls/oledlg/oledlg_Ko.rc,
	  dlls/oledlg/oledlg_Nl.rc, dlls/oledlg/oledlg_No.rc,
	  dlls/oledlg/oledlg_Pt.rc, dlls/oledlg/oledlg_Tr.rc,
	  dlls/oledlg/oledlg_main.c, dlls/oledlg/resource.h,
	  dlls/oledlg/rsrc.rc, dlls/olepro32/olepro32stubs.c,
	  dlls/olesvr32/olesvr_main.c, dlls/opengl32/make_opengl,
	  dlls/opengl32/opengl_ext.h, dlls/opengl32/version.rc,
	  dlls/opengl32/wgl.c, dlls/opengl32/wgl_ext.c,
	  dlls/opengl32/wgl_ext.h, dlls/powrprof/powrprof.c,
	  dlls/psapi/psapi_main.c, dlls/psapi/tests/psapi_main.c,
	  dlls/qcap/capture.h, dlls/qcap/capturegraph.c, dlls/qcap/dllsetup.c,
	  dlls/qcap/dllsetup.h, dlls/qcap/enummedia.c, dlls/qcap/enumpins.c,
	  dlls/qcap/pin.c, dlls/qcap/pin.h, dlls/qcap/qcap_main.c,
	  dlls/qcap/qcap_main.h, dlls/qcap/v4l.c, dlls/qcap/version.rc,
	  dlls/qcap/vfwcapture.c, dlls/qcap/yuv.c, dlls/quartz/acmwrapper.c,
	  dlls/quartz/avidec.c, dlls/quartz/avisplit.c, dlls/quartz/control.c,
	  dlls/quartz/control_private.h, dlls/quartz/dsoundrender.c,
	  dlls/quartz/enumfilters.c, dlls/quartz/enummedia.c,
	  dlls/quartz/enummoniker.c, dlls/quartz/enumpins.c,
	  dlls/quartz/enumregfilters.c, dlls/quartz/filesource.c,
	  dlls/quartz/filtergraph.c, dlls/quartz/filtermapper.c,
	  dlls/quartz/fourcc.h, dlls/quartz/main.c, dlls/quartz/memallocator.c,
	  dlls/quartz/parser.c, dlls/quartz/parser.h, dlls/quartz/pin.c,
	  dlls/quartz/pin.h, dlls/quartz/quartz_private.h,
	  dlls/quartz/regsvr.c, dlls/quartz/systemclock.c,
	  dlls/quartz/tests/filtergraph.c, dlls/quartz/tests/memallocator.c,
	  dlls/quartz/transform.c, dlls/quartz/transform.h,
	  dlls/quartz/version.rc, dlls/quartz/videorenderer.c,
	  dlls/quartz/waveparser.c, dlls/rasapi32/rasapi.c,
	  dlls/riched20/caret.c, dlls/riched20/clipboard.c,
	  dlls/riched20/context.c, dlls/riched20/editor.c,
	  dlls/riched20/editor.h, dlls/riched20/editstr.h,
	  dlls/riched20/list.c, dlls/riched20/paint.c, dlls/riched20/para.c,
	  dlls/riched20/reader.c, dlls/riched20/richole.c, dlls/riched20/row.c,
	  dlls/riched20/run.c, dlls/riched20/string.c, dlls/riched20/style.c,
	  dlls/riched20/tests/editor.c, dlls/riched20/txtsrv.c,
	  dlls/riched20/undo.c, dlls/riched20/version.rc, dlls/riched20/wrap.c,
	  dlls/riched20/writer.c, dlls/riched32/richedit.c,
	  dlls/rpcrt4/cproxy.c, dlls/rpcrt4/cpsf.c, dlls/rpcrt4/cpsf.h,
	  dlls/rpcrt4/cstub.c, dlls/rpcrt4/ndr_marshall.c,
	  dlls/rpcrt4/ndr_midl.c, dlls/rpcrt4/ndr_misc.h,
	  dlls/rpcrt4/ndr_ole.c, dlls/rpcrt4/ndr_stubless.c,
	  dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_defs.h, dlls/rpcrt4/rpc_epmap.c,
	  dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_message.h,
	  dlls/rpcrt4/rpc_misc.h, dlls/rpcrt4/rpc_server.c,
	  dlls/rpcrt4/rpc_server.h, dlls/rpcrt4/rpc_transport.c,
	  dlls/rpcrt4/rpcrt4_main.c, dlls/rpcrt4/rpcss_np_client.c,
	  dlls/rpcrt4/rpcss_np_client.h, dlls/rpcrt4/tests/ndr_marshall.c,
	  dlls/rpcrt4/tests/rpc.c, dlls/rsabase/tests/rsabase.c,
	  dlls/rsaenh/des.c, dlls/rsaenh/handle.c, dlls/rsaenh/handle.h,
	  dlls/rsaenh/implglue.c, dlls/rsaenh/implglue.h, dlls/rsaenh/md2.c,
	  dlls/rsaenh/mpi.c, dlls/rsaenh/rc2.c, dlls/rsaenh/rc4.c,
	  dlls/rsaenh/rsa.c, dlls/rsaenh/rsaenh.c, dlls/rsaenh/tests/rsaenh.c,
	  dlls/rsaenh/tomcrypt.h, dlls/sane.ds/capability.c,
	  dlls/sane.ds/ds_ctrl.c, dlls/sane.ds/ds_image.c,
	  dlls/sane.ds/resource.h, dlls/sane.ds/rsrc.rc,
	  dlls/sane.ds/sane_De.rc, dlls/sane.ds/sane_En.rc,
	  dlls/sane.ds/sane_Fi.rc, dlls/sane.ds/sane_Fr.rc,
	  dlls/sane.ds/sane_Ko.rc, dlls/sane.ds/sane_Nl.rc,
	  dlls/sane.ds/sane_No.rc, dlls/sane.ds/sane_i.h,
	  dlls/sane.ds/sane_main.c, dlls/sane.ds/ui.c,
	  dlls/secur32/base64_codec.c, dlls/secur32/dispatcher.c,
	  dlls/secur32/negotiate.c, dlls/secur32/ntlm.c,
	  dlls/secur32/schannel.c, dlls/secur32/secur32.c,
	  dlls/secur32/secur32_priv.h, dlls/secur32/tests/main.c,
	  dlls/secur32/thunks.c, dlls/secur32/thunks.h, dlls/secur32/wrapper.c,
	  dlls/sensapi/sensapi.c, dlls/serialui/Bg.rc, dlls/serialui/Cs.rc,
	  dlls/serialui/De.rc, dlls/serialui/En.rc, dlls/serialui/Eo.rc,
	  dlls/serialui/Es.rc, dlls/serialui/Fi.rc, dlls/serialui/Fr.rc,
	  dlls/serialui/Hu.rc, dlls/serialui/It.rc, dlls/serialui/Ja.rc,
	  dlls/serialui/Ko.rc, dlls/serialui/Nl.rc, dlls/serialui/No.rc,
	  dlls/serialui/Pt.rc, dlls/serialui/Ru.rc, dlls/serialui/Tr.rc,
	  dlls/serialui/confdlg.c, dlls/serialui/serialui.h,
	  dlls/serialui/serialui_rc.rc, dlls/setupapi/Bg.rc,
	  dlls/setupapi/Cs.rc, dlls/setupapi/De.rc, dlls/setupapi/En.rc,
	  dlls/setupapi/Eo.rc, dlls/setupapi/Es.rc, dlls/setupapi/Fi.rc,
	  dlls/setupapi/Fr.rc, dlls/setupapi/Hu.rc, dlls/setupapi/It.rc,
	  dlls/setupapi/Ja.rc, dlls/setupapi/Ko.rc, dlls/setupapi/Nl.rc,
	  dlls/setupapi/No.rc, dlls/setupapi/Pl.rc, dlls/setupapi/Pt.rc,
	  dlls/setupapi/Ru.rc, dlls/setupapi/Sv.rc, dlls/setupapi/Tr.rc,
	  dlls/setupapi/devinst.c, dlls/setupapi/devinst16.c,
	  dlls/setupapi/dirid.c, dlls/setupapi/diskspace.c,
	  dlls/setupapi/fakedll.c, dlls/setupapi/infparse.c,
	  dlls/setupapi/install.c, dlls/setupapi/misc.c,
	  dlls/setupapi/parser.c, dlls/setupapi/query.c, dlls/setupapi/queue.c,
	  dlls/setupapi/setupapi.rc, dlls/setupapi/setupapi_private.h,
	  dlls/setupapi/setupcab.c, dlls/setupapi/setupx16.h,
	  dlls/setupapi/setupx_main.c, dlls/setupapi/stringtable.c,
	  dlls/setupapi/stubs.c, dlls/setupapi/tests/parser.c,
	  dlls/setupapi/tests/query.c, dlls/setupapi/tests/stringtable.c,
	  dlls/setupapi/virtcopy.c, dlls/sfc/sfc_main.c, dlls/shdocvw/Bg.rc,
	  dlls/shdocvw/De.rc, dlls/shdocvw/En.rc, dlls/shdocvw/Es.rc,
	  dlls/shdocvw/Fi.rc, dlls/shdocvw/Fr.rc, dlls/shdocvw/Hu.rc,
	  dlls/shdocvw/Ko.rc, dlls/shdocvw/Nl.rc, dlls/shdocvw/No.rc,
	  dlls/shdocvw/Pt.rc, dlls/shdocvw/Tr.rc, dlls/shdocvw/classinfo.c,
	  dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/events.c,
	  dlls/shdocvw/factory.c, dlls/shdocvw/frame.c, dlls/shdocvw/ie.c,
	  dlls/shdocvw/iexplore.c, dlls/shdocvw/navigate.c,
	  dlls/shdocvw/oleobject.c, dlls/shdocvw/persist.c,
	  dlls/shdocvw/regsvr.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/shdocvw.rc, dlls/shdocvw/shdocvw_main.c,
	  dlls/shdocvw/shlinstobj.c, dlls/shdocvw/tests/shortcut.c,
	  dlls/shdocvw/version.rc, dlls/shdocvw/view.c,
	  dlls/shdocvw/webbrowser.c, dlls/shell32/autocomplete.c,
	  dlls/shell32/brsfolder.c, dlls/shell32/changenotify.c,
	  dlls/shell32/classes.c, dlls/shell32/clipboard.c,
	  dlls/shell32/control.c, dlls/shell32/cpanel.h,
	  dlls/shell32/cpanelfolder.c, dlls/shell32/dataobject.c,
	  dlls/shell32/dde.c, dlls/shell32/debughlp.c, dlls/shell32/debughlp.h,
	  dlls/shell32/dialogs.c, dlls/shell32/dragdrophelper.c,
	  dlls/shell32/enumidlist.c, dlls/shell32/enumidlist.h,
	  dlls/shell32/folders.c, dlls/shell32/iconcache.c,
	  dlls/shell32/pidl.c, dlls/shell32/pidl.h, dlls/shell32/regsvr.c,
	  dlls/shell32/shell.c, dlls/shell32/shell32_Bg.rc,
	  dlls/shell32/shell32_Ca.rc, dlls/shell32/shell32_Cn.rc,
	  dlls/shell32/shell32_Cs.rc, dlls/shell32/shell32_Da.rc,
	  dlls/shell32/shell32_De.rc, dlls/shell32/shell32_En.rc,
	  dlls/shell32/shell32_Eo.rc, dlls/shell32/shell32_Es.rc,
	  dlls/shell32/shell32_Fi.rc, dlls/shell32/shell32_Fr.rc,
	  dlls/shell32/shell32_Hu.rc, dlls/shell32/shell32_It.rc,
	  dlls/shell32/shell32_Ja.rc, dlls/shell32/shell32_Ko.rc,
	  dlls/shell32/shell32_Nl.rc, dlls/shell32/shell32_No.rc,
	  dlls/shell32/shell32_Pl.rc, dlls/shell32/shell32_Pt.rc,
	  dlls/shell32/shell32_Ru.rc, dlls/shell32/shell32_Si.rc,
	  dlls/shell32/shell32_Sk.rc, dlls/shell32/shell32_Sv.rc,
	  dlls/shell32/shell32_Tr.rc, dlls/shell32/shell32_Uk.rc,
	  dlls/shell32/shell32_Wa.rc, dlls/shell32/shell32_Zh.rc,
	  dlls/shell32/shell32_main.c, dlls/shell32/shell32_main.h,
	  dlls/shell32/shell32_xx.rc, dlls/shell32/shellfolder.h,
	  dlls/shell32/shelllink.c, dlls/shell32/shellole.c,
	  dlls/shell32/shellord.c, dlls/shell32/shellpath.c,
	  dlls/shell32/shellreg.c, dlls/shell32/shellstring.c,
	  dlls/shell32/shfldr.h, dlls/shell32/shfldr_desktop.c,
	  dlls/shell32/shfldr_fs.c, dlls/shell32/shfldr_mycomp.c,
	  dlls/shell32/shfldr_unixfs.c, dlls/shell32/shlexec.c,
	  dlls/shell32/shlfileop.c, dlls/shell32/shlfolder.c,
	  dlls/shell32/shlfsbind.c, dlls/shell32/shlmenu.c,
	  dlls/shell32/shlview.c, dlls/shell32/shpolicy.c,
	  dlls/shell32/shres.rc, dlls/shell32/shresdef.h,
	  dlls/shell32/shv_bg_cmenu.c, dlls/shell32/shv_item_cmenu.c,
	  dlls/shell32/systray.c, dlls/shell32/tests/shell32_test.h,
	  dlls/shell32/tests/shelllink.c, dlls/shell32/tests/shellpath.c,
	  dlls/shell32/tests/shlexec.c, dlls/shell32/tests/shlfileop.c,
	  dlls/shell32/tests/shlfolder.c, dlls/shell32/tests/string.c,
	  dlls/shell32/undocshell.h, dlls/shell32/version.h,
	  dlls/shell32/version.rc, dlls/shell32/version16.rc,
	  dlls/shlwapi/assoc.c, dlls/shlwapi/clist.c, dlls/shlwapi/istream.c,
	  dlls/shlwapi/msgbox.c, dlls/shlwapi/ordinal.c, dlls/shlwapi/path.c,
	  dlls/shlwapi/reg.c, dlls/shlwapi/regstream.c,
	  dlls/shlwapi/resource.h, dlls/shlwapi/shlwapi.rc,
	  dlls/shlwapi/shlwapi_De.rc, dlls/shlwapi/shlwapi_En.rc,
	  dlls/shlwapi/shlwapi_Eo.rc, dlls/shlwapi/shlwapi_Es.rc,
	  dlls/shlwapi/shlwapi_Fi.rc, dlls/shlwapi/shlwapi_Fr.rc,
	  dlls/shlwapi/shlwapi_Hu.rc, dlls/shlwapi/shlwapi_It.rc,
	  dlls/shlwapi/shlwapi_Ja.rc, dlls/shlwapi/shlwapi_Ko.rc,
	  dlls/shlwapi/shlwapi_Nl.rc, dlls/shlwapi/shlwapi_No.rc,
	  dlls/shlwapi/shlwapi_Pt.rc, dlls/shlwapi/shlwapi_Tr.rc,
	  dlls/shlwapi/shlwapi_main.c, dlls/shlwapi/stopwatch.c,
	  dlls/shlwapi/string.c, dlls/shlwapi/tests/clist.c,
	  dlls/shlwapi/tests/clsid.c, dlls/shlwapi/tests/ordinal.c,
	  dlls/shlwapi/tests/path.c, dlls/shlwapi/tests/shreg.c,
	  dlls/shlwapi/tests/string.c, dlls/shlwapi/thread.c,
	  dlls/shlwapi/url.c, dlls/shlwapi/version.rc, dlls/shlwapi/wsprintf.c,
	  dlls/snmpapi/main.c, dlls/spoolss/spoolss_main.c,
	  dlls/stdole2.tlb/rsrc.rc, dlls/stdole2.tlb/std_ole_v2.idl,
	  dlls/stdole32.tlb/rsrc.rc, dlls/stdole32.tlb/std_ole_v1.idl,
	  dlls/sti/sti_main.c, dlls/strmiids/strmiids.c,
	  dlls/tapi32/assisted.c, dlls/tapi32/line.c, dlls/tapi32/phone.c,
	  dlls/twain_32/dsm_ctrl.c, dlls/twain_32/twain16_main.c,
	  dlls/twain_32/twain32_main.c, dlls/twain_32/twain_i.h,
	  dlls/url/url_main.c, dlls/urlmon/binding.c, dlls/urlmon/file.c,
	  dlls/urlmon/format.c, dlls/urlmon/ftp.c, dlls/urlmon/http.c,
	  dlls/urlmon/internet.c, dlls/urlmon/regsvr.c, dlls/urlmon/rsrc.rc,
	  dlls/urlmon/sec_mgr.c, dlls/urlmon/session.c,
	  dlls/urlmon/tests/misc.c, dlls/urlmon/tests/protocol.c,
	  dlls/urlmon/tests/url.c, dlls/urlmon/umon.c, dlls/urlmon/umstream.c,
	  dlls/urlmon/urlmon_main.c, dlls/urlmon/urlmon_main.h,
	  dlls/urlmon/version.rc, dlls/user/bidi16.c, dlls/user/button.c,
	  dlls/user/caret.c, dlls/user/class.c, dlls/user/clipboard.c,
	  dlls/user/combo.c, dlls/user/comm16.c, dlls/user/controls.h,
	  dlls/user/cursoricon.c, dlls/user/dde_client.c, dlls/user/dde_misc.c,
	  dlls/user/dde_private.h, dlls/user/dde_server.c, dlls/user/ddeml16.c,
	  dlls/user/defdlg.c, dlls/user/defwnd.c, dlls/user/desktop.c,
	  dlls/user/dialog.c, dlls/user/dialog16.c, dlls/user/display.c,
	  dlls/user/driver.c, dlls/user/driver16.c, dlls/user/edit.c,
	  dlls/user/exticon.c, dlls/user/focus.c, dlls/user/hook.c,
	  dlls/user/hook16.c, dlls/user/icontitle.c, dlls/user/input.c,
	  dlls/user/kbd16.c, dlls/user/listbox.c, dlls/user/lstr.c,
	  dlls/user/mdi.c, dlls/user/menu.c, dlls/user/message.c,
	  dlls/user/misc.c, dlls/user/mouse16.c, dlls/user/msg16.c,
	  dlls/user/msgbox.c, dlls/user/network.c, dlls/user/nonclient.c,
	  dlls/user/painting.c, dlls/user/property.c, dlls/user/resource.c,
	  dlls/user/resources/display.rc, dlls/user/resources/mouse.rc,
	  dlls/user/resources/user32.rc, dlls/user/resources/user32_Bg.rc,
	  dlls/user/resources/user32_Ca.rc, dlls/user/resources/user32_Cs.rc,
	  dlls/user/resources/user32_Da.rc, dlls/user/resources/user32_De.rc,
	  dlls/user/resources/user32_En.rc, dlls/user/resources/user32_Eo.rc,
	  dlls/user/resources/user32_Es.rc, dlls/user/resources/user32_Fi.rc,
	  dlls/user/resources/user32_Fr.rc, dlls/user/resources/user32_Hu.rc,
	  dlls/user/resources/user32_It.rc, dlls/user/resources/user32_Ja.rc,
	  dlls/user/resources/user32_Ko.rc, dlls/user/resources/user32_Nl.rc,
	  dlls/user/resources/user32_No.rc, dlls/user/resources/user32_Pl.rc,
	  dlls/user/resources/user32_Pt.rc, dlls/user/resources/user32_Ru.rc,
	  dlls/user/resources/user32_Si.rc, dlls/user/resources/user32_Sk.rc,
	  dlls/user/resources/user32_Sv.rc, dlls/user/resources/user32_Tr.rc,
	  dlls/user/resources/user32_Uk.rc, dlls/user/resources/user32_Wa.rc,
	  dlls/user/resources/user32_Zh.rc, dlls/user/resources/user32_bin.rc,
	  dlls/user/resources/version.rc, dlls/user/resources/version16.rc,
	  dlls/user/scroll.c, dlls/user/spy.c, dlls/user/static.c,
	  dlls/user/sysparams.c, dlls/user/tests/class.c,
	  dlls/user/tests/clipboard.c, dlls/user/tests/dce.c,
	  dlls/user/tests/dde.c, dlls/user/tests/dialog.c,
	  dlls/user/tests/edit.c, dlls/user/tests/input.c,
	  dlls/user/tests/listbox.c, dlls/user/tests/menu.c,
	  dlls/user/tests/monitor.c, dlls/user/tests/msg.c,
	  dlls/user/tests/resource.c, dlls/user/tests/resource.rc,
	  dlls/user/tests/sysparams.c, dlls/user/tests/text.c,
	  dlls/user/tests/win.c, dlls/user/tests/winstation.c,
	  dlls/user/tests/wsprintf.c, dlls/user/text.c, dlls/user/uitools.c,
	  dlls/user/user16.c, dlls/user/user_main.c, dlls/user/user_private.h,
	  dlls/user/win.c, dlls/user/winhelp.c, dlls/user/winpos.c,
	  dlls/user/winproc.c, dlls/user/winproc.h, dlls/user/winstation.c,
	  dlls/user/wnd16.c, dlls/user/wsprintf.c, dlls/usp10/tests/usp10.c,
	  dlls/usp10/usp10.c, dlls/uuid/uuid.c, dlls/uxtheme/draw.c,
	  dlls/uxtheme/main.c, dlls/uxtheme/metric.c, dlls/uxtheme/msstyles.c,
	  dlls/uxtheme/msstyles.h, dlls/uxtheme/property.c,
	  dlls/uxtheme/stylemap.c, dlls/uxtheme/system.c, dlls/uxtheme/uxini.c,
	  dlls/uxtheme/uxthemedll.h, dlls/uxtheme/version.rc,
	  dlls/vdhcp.vxd/vdhcp.c, dlls/vdmdbg/vdmdbg.c, dlls/version/info.c,
	  dlls/version/install.c, dlls/version/resource.c,
	  dlls/version/tests/info.c, dlls/version/tests/install.c,
	  dlls/version/tests/version.rc, dlls/version/ver16.c,
	  dlls/vmm.vxd/vmm.c, dlls/vnbt.vxd/vnbt.c,
	  dlls/vnetbios.vxd/vnetbios.c, dlls/vtdapi.vxd/vtdapi.c,
	  dlls/vwin32.vxd/vwin32.c, dlls/w32skrnl/w32skernel.c,
	  dlls/w32skrnl/w32sys.c, dlls/w32skrnl/win32s16.c,
	  dlls/winecrt0/crt0_private.h, dlls/winecrt0/delay_load.c,
	  dlls/winecrt0/dll_entry.c, dlls/winecrt0/dll_main.c,
	  dlls/winecrt0/drv_entry.c, dlls/winecrt0/exe_entry.c,
	  dlls/winecrt0/exe_main.c, dlls/winecrt0/exe_wentry.c,
	  dlls/winecrt0/exe_wmain.c, dlls/winecrt0/init.c,
	  dlls/winecrt0/stub.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/basetexture.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/indexbuffer.c,
	  dlls/wined3d/palette.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/query.c, dlls/wined3d/resource.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/texture.c, dlls/wined3d/utils.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c, dlls/wined3d/wined3d_main.c,
	  dlls/wined3d/wined3d_private.h, dlls/winedos/devices.c,
	  dlls/winedos/dma.c, dlls/winedos/dosaspi.c, dlls/winedos/dosconf.c,
	  dlls/winedos/dosexe.h, dlls/winedos/dosmem.c, dlls/winedos/dosvm.c,
	  dlls/winedos/dosvm.h, dlls/winedos/fpu.c, dlls/winedos/himem.c,
	  dlls/winedos/int09.c, dlls/winedos/int10.c, dlls/winedos/int11.c,
	  dlls/winedos/int13.c, dlls/winedos/int15.c, dlls/winedos/int16.c,
	  dlls/winedos/int17.c, dlls/winedos/int19.c, dlls/winedos/int1a.c,
	  dlls/winedos/int20.c, dlls/winedos/int21.c, dlls/winedos/int25.c,
	  dlls/winedos/int26.c, dlls/winedos/int29.c, dlls/winedos/int2f.c,
	  dlls/winedos/int31.c, dlls/winedos/int33.c, dlls/winedos/int41.c,
	  dlls/winedos/int5c.c, dlls/winedos/int67.c,
	  dlls/winedos/interrupts.c, dlls/winedos/ioports.c,
	  dlls/winedos/module.c, dlls/winedos/ppdev.c, dlls/winedos/relay.c,
	  dlls/winedos/soundblaster.c, dlls/winedos/timer.c,
	  dlls/winedos/vga.c, dlls/winedos/vga.h, dlls/winedos/vxd.c,
	  dlls/winedos/xms.c, dlls/winemp3.acm/common.c,
	  dlls/winemp3.acm/dct64_i386.c, dlls/winemp3.acm/decode_i386.c,
	  dlls/winemp3.acm/huffman.h, dlls/winemp3.acm/interface.c,
	  dlls/winemp3.acm/l2tables.h, dlls/winemp3.acm/layer1.c,
	  dlls/winemp3.acm/layer2.c, dlls/winemp3.acm/layer3.c,
	  dlls/winemp3.acm/mpegl3.c, dlls/winemp3.acm/mpg123.h,
	  dlls/winemp3.acm/mpglib.h, dlls/winemp3.acm/tabinit.c,
	  dlls/wineps/afm.c, dlls/wineps/afm2c.c, dlls/wineps/bitblt.c,
	  dlls/wineps/bitmap.c, dlls/wineps/brush.c, dlls/wineps/builtin.c,
	  dlls/wineps/clipping.c, dlls/wineps/color.c, dlls/wineps/download.c,
	  dlls/wineps/driver.c, dlls/wineps/encode.c, dlls/wineps/escape.c,
	  dlls/wineps/font.c, dlls/wineps/glyphlist.c, dlls/wineps/graphics.c,
	  dlls/wineps/init.c, dlls/wineps/mkagl.c, dlls/wineps/objects.c,
	  dlls/wineps/pen.c, dlls/wineps/ppd.c, dlls/wineps/ps.c,
	  dlls/wineps/psdlg.h, dlls/wineps/psdrv.h, dlls/wineps/rsrc.rc,
	  dlls/wineps/text.c, dlls/wineps/truetype.c, dlls/wineps/type1.c,
	  dlls/wineps/type1afm.c, dlls/wineps/type42.c, dlls/wineps/wps_Bg.rc,
	  dlls/wineps/wps_Cs.rc, dlls/wineps/wps_De.rc, dlls/wineps/wps_En.rc,
	  dlls/wineps/wps_Es.rc, dlls/wineps/wps_Fr.rc, dlls/wineps/wps_Hu.rc,
	  dlls/wineps/wps_It.rc, dlls/wineps/wps_Ja.rc, dlls/wineps/wps_Ko.rc,
	  dlls/wineps/wps_Nl.rc, dlls/wineps/wps_No.rc, dlls/wineps/wps_Pt.rc,
	  dlls/wineps/wps_Ru.rc, dlls/wineps/wps_Si.rc, dlls/wineps/wps_Sk.rc,
	  dlls/wineps/wps_Tr.rc, dlls/wineps/wps_xx.rc, dlls/wininet/cookie.c,
	  dlls/wininet/dialogs.c, dlls/wininet/ftp.c, dlls/wininet/gopher.c,
	  dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/internet.h, dlls/wininet/netconnection.c,
	  dlls/wininet/resource.h, dlls/wininet/rsrc.rc,
	  dlls/wininet/tests/http.c, dlls/wininet/tests/internet.c,
	  dlls/wininet/tests/url.c, dlls/wininet/tests/wininet_test.h,
	  dlls/wininet/urlcache.c, dlls/wininet/utility.c,
	  dlls/wininet/version.rc, dlls/wininet/wininet_Bg.rc,
	  dlls/wininet/wininet_Cs.rc, dlls/wininet/wininet_De.rc,
	  dlls/wininet/wininet_En.rc, dlls/wininet/wininet_Eo.rc,
	  dlls/wininet/wininet_Es.rc, dlls/wininet/wininet_Fi.rc,
	  dlls/wininet/wininet_Fr.rc, dlls/wininet/wininet_Hu.rc,
	  dlls/wininet/wininet_It.rc, dlls/wininet/wininet_Ja.rc,
	  dlls/wininet/wininet_Ko.rc, dlls/wininet/wininet_Nl.rc,
	  dlls/wininet/wininet_No.rc, dlls/wininet/wininet_Pt.rc,
	  dlls/wininet/wininet_Ru.rc, dlls/wininet/wininet_Si.rc,
	  dlls/wininet/wininet_Tr.rc, dlls/wininet/wininet_main.c,
	  dlls/winmm/driver.c, dlls/winmm/joystick.c,
	  dlls/winmm/joystick/joystick.c, dlls/winmm/lolvldrv.c,
	  dlls/winmm/mci.c, dlls/winmm/message16.c, dlls/winmm/mmio.c,
	  dlls/winmm/mmsystem.c, dlls/winmm/playsound.c, dlls/winmm/sound16.c,
	  dlls/winmm/tests/capture.c, dlls/winmm/tests/mixer.c,
	  dlls/winmm/tests/mmio.c, dlls/winmm/tests/timer.c,
	  dlls/winmm/tests/wave.c, dlls/winmm/tests/winmm_test.h,
	  dlls/winmm/time.c, dlls/winmm/winealsa/alsa.c,
	  dlls/winmm/winealsa/alsa.h, dlls/winmm/winealsa/audio.c,
	  dlls/winmm/winealsa/midi.c, dlls/winmm/winearts/arts.c,
	  dlls/winmm/winearts/arts.h, dlls/winmm/winearts/audio.c,
	  dlls/winmm/wineaudioio/audio.c, dlls/winmm/wineaudioio/audioio.c,
	  dlls/winmm/wineesd/audio.c, dlls/winmm/wineesd/esound.c,
	  dlls/winmm/wineesd/esound.h, dlls/winmm/winejack/audio.c,
	  dlls/winmm/winejack/jack.c, dlls/winmm/winejack/jack.h,
	  dlls/winmm/winemm.h, dlls/winmm/winemm16.h,
	  dlls/winmm/winenas/audio.c, dlls/winmm/winenas/nas.c,
	  dlls/winmm/winenas/nas.h, dlls/winmm/wineoss/audio.c,
	  dlls/winmm/wineoss/audio.h, dlls/winmm/wineoss/dscapture.c,
	  dlls/winmm/wineoss/dsrender.c, dlls/winmm/wineoss/midi.c,
	  dlls/winmm/wineoss/midipatch.c, dlls/winmm/wineoss/mixer.c,
	  dlls/winmm/wineoss/mmaux.c, dlls/winmm/wineoss/oss.c,
	  dlls/winmm/wineoss/oss.h, dlls/winmm/winmm.c, dlls/winmm/winmm_Cs.rc,
	  dlls/winmm/winmm_De.rc, dlls/winmm/winmm_En.rc,
	  dlls/winmm/winmm_Es.rc, dlls/winmm/winmm_Fr.rc,
	  dlls/winmm/winmm_It.rc, dlls/winmm/winmm_Ja.rc,
	  dlls/winmm/winmm_Ko.rc, dlls/winmm/winmm_Nl.rc,
	  dlls/winmm/winmm_No.rc, dlls/winmm/winmm_Pt.rc,
	  dlls/winmm/winmm_Ru.rc, dlls/winmm/winmm_Si.rc,
	  dlls/winmm/winmm_Sk.rc, dlls/winmm/winmm_Tr.rc,
	  dlls/winmm/winmm_res.rc, dlls/winnls32/winnls.c, dlls/winspool/Bg.rc,
	  dlls/winspool/De.rc, dlls/winspool/En.rc, dlls/winspool/Eo.rc,
	  dlls/winspool/Fi.rc, dlls/winspool/It.rc, dlls/winspool/Ko.rc,
	  dlls/winspool/Nl.rc, dlls/winspool/Ru.rc, dlls/winspool/Tr.rc,
	  dlls/winspool/info.c, dlls/winspool/tests/info.c,
	  dlls/winspool/winspool.rc, dlls/winspool/wspool.c,
	  dlls/winspool/wspool.h, dlls/wintab32/context.c,
	  dlls/wintab32/manager.c, dlls/wintab32/wintab16.c,
	  dlls/wintab32/wintab32.c, dlls/wintab32/wintab_internal.h,
	  dlls/wintrust/version.rc, dlls/wintrust/wintrust_main.c,
	  dlls/wldap32/add.c, dlls/wldap32/ber.c, dlls/wldap32/bind.c,
	  dlls/wldap32/compare.c, dlls/wldap32/control.c,
	  dlls/wldap32/delete.c, dlls/wldap32/dn.c, dlls/wldap32/error.c,
	  dlls/wldap32/extended.c, dlls/wldap32/init.c, dlls/wldap32/main.c,
	  dlls/wldap32/misc.c, dlls/wldap32/modify.c, dlls/wldap32/modrdn.c,
	  dlls/wldap32/option.c, dlls/wldap32/page.c, dlls/wldap32/parse.c,
	  dlls/wldap32/rename.c, dlls/wldap32/search.c, dlls/wldap32/value.c,
	  dlls/wldap32/winldap_private.h, dlls/wldap32/wldap32.h,
	  dlls/wldap32/wldap32.rc, dlls/wldap32/wldap32_De.rc,
	  dlls/wldap32/wldap32_En.rc, dlls/wldap32/wldap32_Fr.rc,
	  dlls/wldap32/wldap32_Ko.rc, dlls/wldap32/wldap32_Nl.rc,
	  dlls/wldap32/wldap32_No.rc, dlls/wldap32/wldap32_Ru.rc,
	  dlls/wldap32/wldap32_Tr.rc, dlls/wnaspi32/aspi.c,
	  dlls/wnaspi32/aspi.h, dlls/wnaspi32/winaspi16.c,
	  dlls/wnaspi32/winaspi32.c, dlls/wnaspi32/winescsi.h,
	  dlls/wow32/wow_main.c, dlls/ws2_32/async.c, dlls/ws2_32/protocol.c,
	  dlls/ws2_32/socket.c, dlls/ws2_32/socket16.c,
	  dlls/ws2_32/tests/protocol.c, dlls/ws2_32/tests/sock.c,
	  dlls/ws2_32/version.rc, dlls/wsock32/protocol.c,
	  dlls/wsock32/service.c, dlls/wsock32/socket.c,
	  dlls/wsock32/version.rc, dlls/wsock32/wscontrol.h,
	  dlls/wtsapi32/wtsapi32.c, dlls/x11drv/bitblt.c, dlls/x11drv/bitmap.c,
	  dlls/x11drv/brush.c, dlls/x11drv/clipboard.c, dlls/x11drv/clipping.c,
	  dlls/x11drv/codepage.c, dlls/x11drv/dce.c, dlls/x11drv/desktop.c,
	  dlls/x11drv/dga2.c, dlls/x11drv/dga2.h, dlls/x11drv/dib.c,
	  dlls/x11drv/dib_convert.c, dlls/x11drv/dib_dst_swap.c,
	  dlls/x11drv/dib_src_swap.c, dlls/x11drv/event.c,
	  dlls/x11drv/graphics.c, dlls/x11drv/init.c, dlls/x11drv/keyboard.c,
	  dlls/x11drv/mouse.c, dlls/x11drv/mwm.h, dlls/x11drv/opengl.c,
	  dlls/x11drv/palette.c, dlls/x11drv/pen.c, dlls/x11drv/scroll.c,
	  dlls/x11drv/settings.c, dlls/x11drv/text.c, dlls/x11drv/window.c,
	  dlls/x11drv/winpos.c, dlls/x11drv/wintab.c, dlls/x11drv/x11ddraw.c,
	  dlls/x11drv/x11ddraw.h, dlls/x11drv/x11drv.h,
	  dlls/x11drv/x11drv_main.c, dlls/x11drv/x11font.h, dlls/x11drv/xdnd.c,
	  dlls/x11drv/xfont.c, dlls/x11drv/xim.c, dlls/x11drv/xrandr.c,
	  dlls/x11drv/xrandr.h, dlls/x11drv/xrender.c, dlls/x11drv/xvidmode.c,
	  dlls/x11drv/xvidmode.h, fonts/courier.sfd, fonts/marlett.sfd,
	  fonts/ms_sans_serif.sfd, fonts/small_fonts.sfd, fonts/system.sfd,
	  include/accctrl.h, include/aclapi.h, include/activscp.idl,
	  include/adshlp.h, include/advpub.h, include/amstream.idl,
	  include/amvideo.idl, include/appmgmt.h, include/audevcod.h,
	  include/austream.idl, include/aviriff.h, include/axcore.idl,
	  include/axextend.idl, include/basetsd.h, include/basetyps.h,
	  include/cderr.h, include/cguid.h, include/comcat.idl,
	  include/commctrl.h, include/commdlg.h, include/compobj.h,
	  include/control.idl, include/cpl.h, include/custcntl.h,
	  include/cvconst.h, include/d3d.h, include/d3d8.h, include/d3d8caps.h,
	  include/d3d8types.h, include/d3d9.h, include/d3d9caps.h,
	  include/d3d9types.h, include/d3dcaps.h, include/d3dhal.h,
	  include/d3drm.h, include/d3dtypes.h, include/d3dvec.inl,
	  include/d3dx8core.h, include/dbghelp.h, include/dbt.h,
	  include/dciddi.h, include/dciman.h, include/dde.h, include/ddeml.h,
	  include/ddk/cfgmgr32.h, include/ddk/ntddcdvd.h,
	  include/ddk/ntddser.h, include/ddk/ntddtape.h, include/ddk/wdm.h,
	  include/ddk/winsplp.h, include/ddraw.h, include/ddrawi.h,
	  include/ddstream.idl, include/devenum.idl, include/devguid.h,
	  include/digitalv.h, include/dinput.h, include/dispdib.h,
	  include/dispex.idl, include/dlgs.h, include/dls1.h, include/dls2.h,
	  include/dmdls.h, include/dmerror.h, include/dmo.h, include/dmoreg.h,
	  include/dmort.h, include/dmplugin.h, include/dmusbuff.h,
	  include/dmusicc.h, include/dmusicf.h, include/dmusici.h,
	  include/dmusics.h, include/docobj.idl, include/downloadmgr.idl,
	  include/dpaddr.h, include/dplay.h, include/dplay8.h,
	  include/dplobby.h, include/dplobby8.h, include/dpnathlp.h,
	  include/dsconf.h, include/dsdriver.h, include/dshow.h,
	  include/dsound.h, include/dsrole.h, include/dxdiag.h,
	  include/dxerr8.h, include/dxerr9.h, include/dxfile.h,
	  include/dyngraph.idl, include/errors.h, include/evcode.h,
	  include/evntrace.h, include/excpt.h, include/exdisp.idl,
	  include/exdispid.h, include/fci.h, include/fdi.h, include/gdi.h,
	  include/guiddef.h, include/heap.h, include/hlink.idl,
	  include/htmlhelp.h, include/iads.idl, include/icm.h,
	  include/icmpapi.h, include/idispids.h, include/imagehlp.h,
	  include/imm.h, include/initguid.h, include/ipexport.h,
	  include/iphlpapi.h, include/ipifcons.h, include/iprtrmib.h,
	  include/iptypes.h, include/ks.h, include/ksguid.h, include/ksmedia.h,
	  include/lm.h, include/lmaccess.h, include/lmapibuf.h,
	  include/lmbrowsr.h, include/lmcons.h, include/lmerr.h,
	  include/lmjoin.h, include/lmserver.h, include/lmshare.h,
	  include/lmstats.h, include/lmwksta.h, include/lzexpand.h,
	  include/mapi.h, include/mapicode.h, include/mapidefs.h,
	  include/mapiguid.h, include/mapitags.h, include/mapiutil.h,
	  include/mapival.h, include/mapix.h, include/mciavi.h, include/mcx.h,
	  include/mediaerr.h, include/mediaobj.idl, include/mimeinfo.idl,
	  include/minmax.h, include/mlang.idl, include/mmddk.h,
	  include/mmreg.h, include/mmstream.idl, include/mmsystem.h,
	  include/mprapi.h, include/msacm.h, include/msacmdlg.h,
	  include/msacmdrv.h, include/mscat.h, include/mshtmcid.h,
	  include/mshtmdid.h, include/mshtmhst.idl, include/mshtml.idl,
	  include/msi.h, include/msidefs.h, include/msiquery.h,
	  include/mssip.h, include/msvcrt/crtdbg.h, include/msvcrt/eh.h,
	  include/msvcrt/errno.h, include/msvcrt/locale.h,
	  include/msvcrt/malloc.h, include/msvcrt/mbctype.h,
	  include/msvcrt/mbstring.h, include/msvcrt/search.h,
	  include/msvcrt/setjmp.h, include/msvcrt/signal.h,
	  include/msvcrt/stddef.h, include/msvcrt/sys/locking.h,
	  include/msvcrt/sys/timeb.h, include/msvcrt/sys/types.h,
	  include/msvcrt/sys/utime.h, include/msvcrt/time.h,
	  include/msvcrt/wctype.h, include/mswsock.h, include/msxml.idl,
	  include/msxml2.idl, include/msxml2did.h, include/msxmldid.h,
	  include/nb30.h, include/ndrtypes.h, include/npapi.h,
	  include/nspapi.h, include/ntddcdrm.h, include/ntddscsi.h,
	  include/ntddstor.h, include/ntdsapi.h, include/ntsecapi.h,
	  include/ntstatus.h, include/oaidl.idl, include/objbase.h,
	  include/objidl.idl, include/objsafe.idl, include/ocidl.idl,
	  include/odbcinst.h, include/ole2.h, include/ole2ver.h,
	  include/oleauto.h, include/olectl.h, include/oledlg.h,
	  include/oleidl.idl, include/pktdef.h, include/poppack.h,
	  include/powrprof.h, include/propidl.idl, include/prsht.h,
	  include/psapi.h, include/pshpack1.h, include/pshpack2.h,
	  include/pshpack4.h, include/pshpack8.h, include/pstore.idl,
	  include/ras.h, include/reason.h, include/regstr.h,
	  include/richedit.h, include/richole.idl, include/rpc.h,
	  include/rpcdce.h, include/rpcdcep.h, include/rpcndr.h,
	  include/rpcnterr.h, include/rpcproxy.h, include/schannel.h,
	  include/schemadef.h, include/schnlsp.h, include/sddl.h,
	  include/secext.h, include/security.h, include/sensapi.h,
	  include/sensevts.idl, include/servprov.idl, include/setupapi.h,
	  include/sfc.h, include/shellapi.h, include/shldisp.idl,
	  include/shlguid.h, include/shlobj.h, include/shlwapi.h,
	  include/shobjidl.idl, include/shtypes.idl, include/sipbase.h,
	  include/snmp.h, include/softpub.h, include/sql.h, include/sqlext.h,
	  include/sqltypes.h, include/sspi.h, include/storage.h,
	  include/strmif.idl, include/tapi.h, include/tchar.h,
	  include/textserv.h, include/thread.h, include/tlhelp32.h,
	  include/tmschema.h, include/unknwn.idl, include/urlmon.idl,
	  include/usp10.h, include/uuids.h, include/uxtheme.h, include/ver.h,
	  include/vfw.h, include/vfwmsgs.h, include/win.h, include/winbase.h,
	  include/wincon.h, include/wincrypt.h, include/windef.h,
	  include/windns.h, include/windows.h, include/windowsx.h,
	  include/wine/debug.h, include/wine/exception.h,
	  include/wine/itss.idl, include/wine/library.h, include/wine/list.h,
	  include/wine/mmsystem16.h, include/wine/port.h,
	  include/wine/pthread.h, include/wine/rpcss_shared.h,
	  include/wine/server.h, include/wine/test.h, include/wine/unicode.h,
	  include/wine/winaspi.h, include/wine/winbase16.h,
	  include/wine/windef16.h, include/wine/wine_common_ver.rc,
	  include/wine/wined3d_gl.h, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h, include/wine/wingdi16.h,
	  include/wine/winnet16.h, include/wine/winsock16.h,
	  include/wine/winuser16.h, include/wine/wpp.h, include/winerror.h,
	  include/wingdi.h, include/wininet.h, include/winioctl.h,
	  include/winldap.h, include/winnetwk.h, include/winnls.h,
	  include/winnls32.h, include/winnt.h, include/winpos.h,
	  include/winreg.h, include/winres.h, include/winresrc.h,
	  include/winsock.h, include/winsock2.h, include/winspool.h,
	  include/winsvc.h, include/wintab.h, include/wintabx.h,
	  include/winternl.h, include/wintrust.h, include/winuser.h,
	  include/winver.h, include/wmistr.h, include/wnaspi32.h,
	  include/wownt32.h, include/ws2spi.h, include/ws2tcpip.h,
	  include/wshisotp.h, include/wsipx.h, include/wsnwlink.h,
	  include/wtsapi32.h, include/wtypes.idl, include/xcmc.h,
	  include/xmldom.idl, include/xmldomdid.h, include/xmldso.idl,
	  include/xmldsodid.h, include/zmouse.h, libs/port/ffs.c,
	  libs/port/fstatvfs.c, libs/port/futimes.c, libs/port/getopt.c,
	  libs/port/getopt.h, libs/port/getopt1.c, libs/port/getpagesize.c,
	  libs/port/gettid.c, libs/port/interlocked.c, libs/port/lstat.c,
	  libs/port/memcpy_unaligned.c, libs/port/memmove.c,
	  libs/port/mkstemps.c, libs/port/pread.c, libs/port/pwrite.c,
	  libs/port/readlink.c, libs/port/sigsetjmp.c, libs/port/spawn.c,
	  libs/port/statvfs.c, libs/port/strcasecmp.c, libs/port/strerror.c,
	  libs/port/strncasecmp.c, libs/port/usleep.c, libs/unicode/cpmap.pl,
	  libs/unicode/cptable.c, libs/unicode/defaults, libs/unicode/fold.c,
	  libs/unicode/mbtowc.c, libs/unicode/sortkey.c, libs/unicode/string.c,
	  libs/unicode/utf8.c, libs/unicode/wctomb.c, libs/wine/config.c,
	  libs/wine/debug.c, libs/wine/ldt.c, libs/wine/loader.c,
	  libs/wine/mmap.c, libs/wine/port.c, libs/wpp/ppl.l, libs/wpp/ppy.y,
	  libs/wpp/preproc.c, libs/wpp/wpp.c, libs/wpp/wpp_private.h,
	  loader/glibc.c, loader/kthread.c, loader/main.c, loader/main.h,
	  loader/preloader.c, loader/pthread.c, programs/clock/Cs.rc,
	  programs/clock/Da.rc, programs/clock/De.rc, programs/clock/En.rc,
	  programs/clock/Eo.rc, programs/clock/Es.rc, programs/clock/Fi.rc,
	  programs/clock/Fr.rc, programs/clock/Hu.rc, programs/clock/It.rc,
	  programs/clock/Ko.rc, programs/clock/Nl.rc, programs/clock/No.rc,
	  programs/clock/Pl.rc, programs/clock/Pt.rc, programs/clock/Ru.rc,
	  programs/clock/Si.rc, programs/clock/Sk.rc, programs/clock/Sw.rc,
	  programs/clock/Th.rc, programs/clock/Tr.rc, programs/clock/Wa.rc,
	  programs/clock/Zh.rc, programs/clock/clock_res.h,
	  programs/clock/main.c, programs/clock/main.h, programs/clock/rsrc.rc,
	  programs/clock/winclock.c, programs/clock/winclock.h,
	  programs/cmdlgtst/Cs.rc, programs/cmdlgtst/De.rc,
	  programs/cmdlgtst/En.rc, programs/cmdlgtst/Es.rc,
	  programs/cmdlgtst/Fr.rc, programs/cmdlgtst/It.rc,
	  programs/cmdlgtst/Ko.rc, programs/cmdlgtst/Nl.rc,
	  programs/cmdlgtst/No.rc, programs/cmdlgtst/Pt.rc,
	  programs/cmdlgtst/Ru.rc, programs/cmdlgtst/Si.rc,
	  programs/cmdlgtst/Tr.rc, programs/cmdlgtst/cmdlgr.rc,
	  programs/cmdlgtst/cmdlgtst.c, programs/cmdlgtst/cmdlgtst.h,
	  programs/control/control.c, programs/control/params.h,
	  programs/eject/eject.c, programs/expand/expand.c,
	  programs/explorer/desktop.c, programs/explorer/explorer.c,
	  programs/explorer/explorer_private.h, programs/explorer/hal.c,
	  programs/explorer/systray.c, programs/hh/main.c,
	  programs/icinfo/icinfo.c, programs/iexplore/main.c,
	  programs/make_progs, programs/msiexec/msiexec.c,
	  programs/msiexec/rsrc.rc, programs/msiexec/version.rc,
	  programs/notepad/Bg.rc, programs/notepad/Cs.rc,
	  programs/notepad/Da.rc, programs/notepad/De.rc,
	  programs/notepad/En.rc, programs/notepad/Eo.rc,
	  programs/notepad/Es.rc, programs/notepad/Fi.rc,
	  programs/notepad/Fr.rc, programs/notepad/Hu.rc,
	  programs/notepad/It.rc, programs/notepad/Ja.rc,
	  programs/notepad/Ko.rc, programs/notepad/Nl.rc,
	  programs/notepad/No.rc, programs/notepad/Pl.rc,
	  programs/notepad/Pt.rc, programs/notepad/Ru.rc,
	  programs/notepad/Si.rc, programs/notepad/Sk.rc,
	  programs/notepad/Sw.rc, programs/notepad/Th.rc,
	  programs/notepad/Tr.rc, programs/notepad/Wa.rc,
	  programs/notepad/Zh.rc, programs/notepad/dialog.c,
	  programs/notepad/dialog.h, programs/notepad/main.c,
	  programs/notepad/main.h, programs/notepad/notepad_res.h,
	  programs/notepad/rsrc.rc, programs/progman/Cs.rc,
	  programs/progman/Da.rc, programs/progman/De.rc,
	  programs/progman/En.rc, programs/progman/Es.rc,
	  programs/progman/Fi.rc, programs/progman/Fr.rc,
	  programs/progman/Hu.rc, programs/progman/It.rc,
	  programs/progman/Ko.rc, programs/progman/Nl.rc,
	  programs/progman/No.rc, programs/progman/Pt.rc,
	  programs/progman/Ru.rc, programs/progman/Si.rc,
	  programs/progman/Sk.rc, programs/progman/Sw.rc,
	  programs/progman/Tr.rc, programs/progman/Va.rc,
	  programs/progman/Wa.rc, programs/progman/Xx.rc,
	  programs/progman/Zh.rc, programs/progman/accel.rc,
	  programs/progman/dialog.c, programs/progman/group.c,
	  programs/progman/grpfile.c, programs/progman/main.c,
	  programs/progman/progman.h, programs/progman/program.c,
	  programs/progman/rsrc.rc, programs/progman/string.c,
	  programs/regedit/Bg.rc, programs/regedit/Cs.rc,
	  programs/regedit/De.rc, programs/regedit/En.rc,
	  programs/regedit/Es.rc, programs/regedit/Fr.rc,
	  programs/regedit/Hu.rc, programs/regedit/It.rc,
	  programs/regedit/Ja.rc, programs/regedit/Ko.rc,
	  programs/regedit/Nl.rc, programs/regedit/No.rc,
	  programs/regedit/Pl.rc, programs/regedit/Pt.rc,
	  programs/regedit/Ru.rc, programs/regedit/Si.rc,
	  programs/regedit/Tr.rc, programs/regedit/about.c,
	  programs/regedit/childwnd.c, programs/regedit/edit.c,
	  programs/regedit/framewnd.c, programs/regedit/hexedit.c,
	  programs/regedit/listview.c, programs/regedit/main.c,
	  programs/regedit/main.h, programs/regedit/regedit.c,
	  programs/regedit/regproc.c, programs/regedit/regproc.h,
	  programs/regedit/resource.h, programs/regedit/resource.rc,
	  programs/regedit/rsrc.rc, programs/regedit/treeview.c,
	  programs/regsvr32/regsvr32.c, programs/regsvr32/regsvr32.rc,
	  programs/rpcss/epmap_server.c, programs/rpcss/np_server.c,
	  programs/rpcss/rpcss.h, programs/rpcss/rpcss_main.c,
	  programs/rundll32/rundll32.c, programs/start/Cs.rc,
	  programs/start/De.rc, programs/start/En.rc, programs/start/Es.rc,
	  programs/start/Fr.rc, programs/start/It.rc, programs/start/Ko.rc,
	  programs/start/Nl.rc, programs/start/No.rc, programs/start/Pt.rc,
	  programs/start/Ru.rc, programs/start/Si.rc, programs/start/Tr.rc,
	  programs/start/resources.h, programs/start/rsrc.rc,
	  programs/start/start.c, programs/taskmgr/De.rc,
	  programs/taskmgr/En.rc, programs/taskmgr/Fr.rc,
	  programs/taskmgr/Ko.rc, programs/taskmgr/Nl.rc,
	  programs/taskmgr/No.rc, programs/taskmgr/Tr.rc,
	  programs/taskmgr/about.c, programs/taskmgr/affinity.c,
	  programs/taskmgr/applpage.c, programs/taskmgr/column.c,
	  programs/taskmgr/column.h, programs/taskmgr/dbgchnl.c,
	  programs/taskmgr/debug.c, programs/taskmgr/endproc.c,
	  programs/taskmgr/graph.c, programs/taskmgr/graphctl.c,
	  programs/taskmgr/graphctl.h, programs/taskmgr/optnmenu.c,
	  programs/taskmgr/perfdata.c, programs/taskmgr/perfdata.h,
	  programs/taskmgr/perfpage.c, programs/taskmgr/priority.c,
	  programs/taskmgr/proclist.c, programs/taskmgr/procpage.c,
	  programs/taskmgr/run.c, programs/taskmgr/taskmgr.c,
	  programs/taskmgr/taskmgr.h, programs/taskmgr/taskmgr.rc,
	  programs/taskmgr/trayicon.c, programs/uninstaller/Bg.rc,
	  programs/uninstaller/Cs.rc, programs/uninstaller/De.rc,
	  programs/uninstaller/En.rc, programs/uninstaller/Eo.rc,
	  programs/uninstaller/Es.rc, programs/uninstaller/Fi.rc,
	  programs/uninstaller/Fr.rc, programs/uninstaller/It.rc,
	  programs/uninstaller/Ko.rc, programs/uninstaller/No.rc,
	  programs/uninstaller/Pt.rc, programs/uninstaller/Tr.rc,
	  programs/uninstaller/main.c, programs/uninstaller/resource.h,
	  programs/uninstaller/rsrc.rc, programs/view/Cs.rc,
	  programs/view/De.rc, programs/view/En.rc, programs/view/Eo.rc,
	  programs/view/Es.rc, programs/view/Fr.rc, programs/view/It.rc,
	  programs/view/Ko.rc, programs/view/Nl.rc, programs/view/No.rc,
	  programs/view/Pt.rc, programs/view/Ru.rc, programs/view/Si.rc,
	  programs/view/Tr.rc, programs/view/globals.h, programs/view/init.c,
	  programs/view/resource.h, programs/view/view.c,
	  programs/view/viewrc.rc, programs/view/winmain.c,
	  programs/wcmd/Cs.rc, programs/wcmd/De.rc, programs/wcmd/En.rc,
	  programs/wcmd/Es.rc, programs/wcmd/Fr.rc, programs/wcmd/Ja.rc,
	  programs/wcmd/Ko.rc, programs/wcmd/Nl.rc, programs/wcmd/No.rc,
	  programs/wcmd/Pl.rc, programs/wcmd/Pt.rc, programs/wcmd/Ru.rc,
	  programs/wcmd/Si.rc, programs/wcmd/Tr.rc, programs/wcmd/batch.c,
	  programs/wcmd/builtins.c, programs/wcmd/directory.c,
	  programs/wcmd/wcmd.h, programs/wcmd/wcmdmain.c,
	  programs/wcmd/wcmdrc.rc, programs/wineapploader.in,
	  programs/wineboot/wineboot.c, programs/winebrowser/main.c,
	  programs/winecfg/Bg.rc, programs/winecfg/Cs.rc,
	  programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Hu.rc,
	  programs/winecfg/It.rc, programs/winecfg/Ja.rc,
	  programs/winecfg/Ko.rc, programs/winecfg/Nl.rc,
	  programs/winecfg/No.rc, programs/winecfg/Pt.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Si.rc,
	  programs/winecfg/Tr.rc, programs/winecfg/appdefaults.c,
	  programs/winecfg/audio.c, programs/winecfg/drive.c,
	  programs/winecfg/drivedetect.c, programs/winecfg/driveui.c,
	  programs/winecfg/libraries.c, programs/winecfg/main.c,
	  programs/winecfg/properties.h, programs/winecfg/resource.h,
	  programs/winecfg/theme.c, programs/winecfg/winecfg.c,
	  programs/winecfg/winecfg.h, programs/winecfg/winecfg.rc,
	  programs/winecfg/x11drvdlg.c, programs/wineconsole/curses.c,
	  programs/wineconsole/dialog.c, programs/wineconsole/registry.c,
	  programs/wineconsole/user.c, programs/wineconsole/winecon_private.h,
	  programs/wineconsole/winecon_user.h,
	  programs/wineconsole/wineconsole.c,
	  programs/wineconsole/wineconsole_Cs.rc,
	  programs/wineconsole/wineconsole_De.rc,
	  programs/wineconsole/wineconsole_En.rc,
	  programs/wineconsole/wineconsole_Eo.rc,
	  programs/wineconsole/wineconsole_Es.rc,
	  programs/wineconsole/wineconsole_Fr.rc,
	  programs/wineconsole/wineconsole_Hu.rc,
	  programs/wineconsole/wineconsole_It.rc,
	  programs/wineconsole/wineconsole_Ko.rc,
	  programs/wineconsole/wineconsole_Nl.rc,
	  programs/wineconsole/wineconsole_No.rc,
	  programs/wineconsole/wineconsole_Pl.rc,
	  programs/wineconsole/wineconsole_Pt.rc,
	  programs/wineconsole/wineconsole_Ru.rc,
	  programs/wineconsole/wineconsole_Tr.rc,
	  programs/wineconsole/wineconsole_Zh.rc,
	  programs/wineconsole/wineconsole_res.h,
	  programs/wineconsole/wineconsole_res.rc, programs/winedbg/be_alpha.c,
	  programs/winedbg/be_cpu.h, programs/winedbg/be_i386.c,
	  programs/winedbg/be_ppc.c, programs/winedbg/break.c,
	  programs/winedbg/dbg.y, programs/winedbg/debug.l,
	  programs/winedbg/debugger.h, programs/winedbg/display.c,
	  programs/winedbg/expr.c, programs/winedbg/expr.h,
	  programs/winedbg/gdbproxy.c, programs/winedbg/info.c,
	  programs/winedbg/intvar.h, programs/winedbg/memory.c,
	  programs/winedbg/source.c, programs/winedbg/stack.c,
	  programs/winedbg/symbol.c, programs/winedbg/tgt_active.c,
	  programs/winedbg/tgt_minidump.c, programs/winedbg/types.c,
	  programs/winedbg/winedbg.c, programs/winefile/Cs.rc,
	  programs/winefile/De.rc, programs/winefile/En.rc,
	  programs/winefile/Es.rc, programs/winefile/Fr.rc,
	  programs/winefile/Hu.rc, programs/winefile/It.rc,
	  programs/winefile/Ko.rc, programs/winefile/Nl.rc,
	  programs/winefile/No.rc, programs/winefile/Pl.rc,
	  programs/winefile/Pt.rc, programs/winefile/Ru.rc,
	  programs/winefile/Si.rc, programs/winefile/Sv.rc,
	  programs/winefile/Tr.rc, programs/winefile/Zh.rc,
	  programs/winefile/resource.h, programs/winefile/resource.rc,
	  programs/winefile/rsrc.rc, programs/winefile/splitpath.c,
	  programs/winefile/winefile.c, programs/winefile/winefile.h,
	  programs/winelauncher.in, programs/winemenubuilder/winemenubuilder.c,
	  programs/winemine/Cs.rc, programs/winemine/De.rc,
	  programs/winemine/En.rc, programs/winemine/Es.rc,
	  programs/winemine/Fi.rc, programs/winemine/Fr.rc,
	  programs/winemine/It.rc, programs/winemine/Ko.rc,
	  programs/winemine/Nl.rc, programs/winemine/No.rc,
	  programs/winemine/Pl.rc, programs/winemine/Pt.rc,
	  programs/winemine/Ru.rc, programs/winemine/Si.rc,
	  programs/winemine/Tr.rc, programs/winemine/dialog.c,
	  programs/winemine/dialog.h, programs/winemine/main.c,
	  programs/winemine/main.h, programs/winemine/resource.h,
	  programs/winemine/rsrc.rc, programs/winepath/winepath.c,
	  programs/winetest/dist.rc, programs/winetest/gui.c,
	  programs/winetest/main.c, programs/winetest/resource.h,
	  programs/winetest/send.c, programs/winetest/util.c,
	  programs/winetest/winetest.h, programs/winetest/winetest.rc,
	  programs/winevdm/winevdm.c, programs/winhelp/Bg.rc,
	  programs/winhelp/Cs.rc, programs/winhelp/Da.rc,
	  programs/winhelp/De.rc, programs/winhelp/En.rc,
	  programs/winhelp/Eo.rc, programs/winhelp/Es.rc,
	  programs/winhelp/Fi.rc, programs/winhelp/Fr.rc,
	  programs/winhelp/Hu.rc, programs/winhelp/It.rc,
	  programs/winhelp/Ko.rc, programs/winhelp/Nl.rc,
	  programs/winhelp/No.rc, programs/winhelp/Pl.rc,
	  programs/winhelp/Pt.rc, programs/winhelp/Ru.rc,
	  programs/winhelp/Si.rc, programs/winhelp/Sk.rc,
	  programs/winhelp/Sw.rc, programs/winhelp/Tr.rc,
	  programs/winhelp/Va.rc, programs/winhelp/Wa.rc,
	  programs/winhelp/Zh.rc, programs/winhelp/callback.c,
	  programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h,
	  programs/winhelp/macro.c, programs/winhelp/macro.h,
	  programs/winhelp/macro.lex.l, programs/winhelp/rsrc.rc,
	  programs/winhelp/string.c, programs/winhelp/winhelp.c,
	  programs/winhelp/winhelp.h, programs/winver/winver.c,
	  programs/wordpad/De.rc, programs/wordpad/En.rc,
	  programs/wordpad/Fr.rc, programs/wordpad/Hu.rc,
	  programs/wordpad/Ko.rc, programs/wordpad/Nl.rc,
	  programs/wordpad/No.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/rsrc.rc, programs/wordpad/wordpad.c, server/atom.c,
	  server/change.c, server/class.c, server/clipboard.c,
	  server/console.c, server/console.h, server/context_alpha.c,
	  server/context_i386.c, server/context_powerpc.c,
	  server/context_sparc.c, server/context_x86_64.c, server/debugger.c,
	  server/directory.c, server/event.c, server/fd.c, server/file.c,
	  server/file.h, server/handle.c, server/handle.h, server/hook.c,
	  server/mailslot.c, server/main.c, server/mapping.c, server/mutex.c,
	  server/named_pipe.c, server/object.c, server/object.h,
	  server/process.c, server/process.h, server/protocol.def,
	  server/ptrace.c, server/queue.c, server/region.c, server/registry.c,
	  server/request.c, server/request.h, server/security.h,
	  server/semaphore.c, server/serial.c, server/signal.c,
	  server/snapshot.c, server/sock.c, server/symlink.c, server/thread.c,
	  server/thread.h, server/timer.c, server/token.c, server/trace.c,
	  server/unicode.c, server/unicode.h, server/user.c, server/user.h,
	  server/window.c, server/winstation.c, tools/bin2res.c,
	  tools/bug_report.pl, tools/c2man.pl, tools/examine-relay,
	  tools/fnt2bdf.c, tools/fnt2bdf.h, tools/fnt2fon.c,
	  tools/font_convert.sh, tools/genpatch, tools/make_authors,
	  tools/make_ctests.c, tools/make_requests, tools/makedep.c,
	  tools/relpath.c, tools/runtest, tools/sfnt2fnt.c,
	  tools/widl/client.c, tools/widl/hash.c, tools/widl/hash.h,
	  tools/widl/header.c, tools/widl/header.h, tools/widl/parser.h,
	  tools/widl/parser.l, tools/widl/parser.y, tools/widl/proxy.c,
	  tools/widl/server.c, tools/widl/typegen.c, tools/widl/typegen.h,
	  tools/widl/typelib.c, tools/widl/typelib.h,
	  tools/widl/typelib_struct.h, tools/widl/utils.c, tools/widl/utils.h,
	  tools/widl/widl.c, tools/widl/widl.h, tools/widl/widltypes.h,
	  tools/widl/write_msft.c, tools/winapi/c_function.pm,
	  tools/winapi/c_parser.pm, tools/winapi/c_type.pm,
	  tools/winapi/config.pm, tools/winapi/function.pm,
	  tools/winapi/make_filter, tools/winapi/make_filter_options.pm,
	  tools/winapi/make_parser.pm, tools/winapi/modules.pm,
	  tools/winapi/msvcmaker_options.pm, tools/winapi/nativeapi.pm,
	  tools/winapi/options.pm, tools/winapi/output.pm,
	  tools/winapi/preprocessor.pm, tools/winapi/setup.pm,
	  tools/winapi/tests.pm, tools/winapi/trampoline, tools/winapi/type.pm,
	  tools/winapi/util.pm, tools/winapi/winapi.pm,
	  tools/winapi/winapi_c_parser.pm, tools/winapi/winapi_check,
	  tools/winapi/winapi_check_options.pm, tools/winapi/winapi_cleanup,
	  tools/winapi/winapi_cleanup_options.pm,
	  tools/winapi/winapi_documentation.pm, tools/winapi/winapi_extract,
	  tools/winapi/winapi_extract_options.pm, tools/winapi/winapi_fixup,
	  tools/winapi/winapi_fixup_documentation.pm,
	  tools/winapi/winapi_fixup_editor.pm,
	  tools/winapi/winapi_fixup_options.pm,
	  tools/winapi/winapi_fixup_statements.pm,
	  tools/winapi/winapi_function.pm, tools/winapi/winapi_global.pm,
	  tools/winapi/winapi_local.pm, tools/winapi/winapi_module_user.pm,
	  tools/winapi/winapi_parser.pm, tools/winapi/winapi_test,
	  tools/winapi/winapi_test_options.pm, tools/wine.inf,
	  tools/winebuild/build.h, tools/winebuild/import.c,
	  tools/winebuild/main.c, tools/winebuild/parser.c,
	  tools/winebuild/relay.c, tools/winebuild/res16.c,
	  tools/winebuild/res32.c, tools/winebuild/spec16.c,
	  tools/winebuild/spec32.c, tools/winebuild/utils.c,
	  tools/winedump/cvinclude.h, tools/winedump/debug.c,
	  tools/winedump/dump.c, tools/winedump/emf.c,
	  tools/winedump/function_grep.pl, tools/winedump/le.c,
	  tools/winedump/lnk.c, tools/winedump/main.c,
	  tools/winedump/minidump.c, tools/winedump/misc.c,
	  tools/winedump/msmangle.c, tools/winedump/ne.c,
	  tools/winedump/output.c, tools/winedump/pe.c, tools/winedump/pe.h,
	  tools/winedump/search.c, tools/winedump/symbol.c,
	  tools/winedump/winedump.h, tools/winegcc/utils.c,
	  tools/winegcc/utils.h, tools/winegcc/winegcc.c, tools/wineinstall,
	  tools/winemaker, tools/wineprefixcreate.in, tools/wineshelllink,
	  tools/winewrapper, tools/wmc/lang.c, tools/wmc/lang.h,
	  tools/wmc/mcl.c, tools/wmc/mcy.y, tools/wmc/utils.c,
	  tools/wmc/utils.h, tools/wmc/wmc.c, tools/wmc/wmc.h,
	  tools/wmc/wmctypes.h, tools/wmc/write.c, tools/wmc/write.h,
	  tools/wrc/dumpres.c, tools/wrc/dumpres.h, tools/wrc/genres.c,
	  tools/wrc/genres.h, tools/wrc/newstruc.c, tools/wrc/newstruc.h,
	  tools/wrc/parser.h, tools/wrc/parser.l, tools/wrc/parser.y,
	  tools/wrc/readres.c, tools/wrc/readres.h, tools/wrc/translation.c,
	  tools/wrc/utils.c, tools/wrc/utils.h, tools/wrc/wrc.c,
	  tools/wrc/wrc.h, tools/wrc/wrctypes.h, tools/wrc/writeres.c:
	Update the address of the Free Software Foundation.

2006-05-21  Labrousse Jean <jlabrous@altern.org>

	* dlls/msi/action.c:
	msi: Fix short name and long name mismatch in action.c.

2006-05-23  Troy Rollo <wine@troy.rollo.name>

	* dlls/ole32/storage32.c:
	ole32: Fix excessive file sizes for Storage files.
	The IStorage (DocFile) implementation was adding empty blocks at the
	end of the file every time a caller wrote data that was not a multiple
	of 512 bytes.  If the caller made a lot of very small writes the file
	size could be huge even though the data in the file was tiny. This was
	caused by BlockChainStream_SetSize trying to allocate file blocks for
	the new data using a condition that bore no relationship to the
	required condition, and it was not necessary to do so at that time
	since it is done (the right way) by StorageImpl_GetNextFreeBigBlock
	(called via BlockChainStream_Enlarge).

2006-05-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/msg.c:
	user/tests: Don't generate a mouse click message in mouse_ll_global_thread_proc.
	Windows doesn't like when a thread plays games with the focus, that
	leads to all kinds of misbehaviours and failures to activate a
	window. So, better don't generate a mouse click message in
	mouse_ll_global_thread_proc.

	* dlls/user/tests/msg.c:
	user/tests: Add lparam to all HCBT_MINMAX hook messages.

2006-05-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: OpengGL accelerated blits.
	Implement some basic opengl accelerated blts from and to render
	targets. It's not perfect yet, but enought to make some D3D apps
	happy. For now the only supported operations are:
	- Full screen back -> Front buffer: Just call present
	- Offscreen surface -> render target
	- Render target -> offscreen surface(slow)
	- render target colorfill

2006-05-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Surface pixel format conversion code.

2006-05-22  Robert Shearman <rob@codeweavers.com>

	* server/queue.c:
	server: Don't clear the QS_POSTMESSAGE flag if there is a pending quit message.

	* dlls/ole32/tests/marshal.c:
	ole32: Release the outer unknown in the proxybuffer test.
	Release the outer unknown in the proxybuffer test to show that the
	last release of the outer unknown doesn't free the proxy buffer.

	* dlls/ole32/marshal.c, dlls/ole32/oleproxy.c:
	ole32: Release the proxy buffer object on the last release of the proxy's
	outer unknown.
	Release the proxy buffer object on the last release of the proxy's outer
	unknown, otherwise memory is leaked for the Ndr implementation of
	IRpcProxyBuffer.
	Fix up the hand-coded proxies to match the behaviour from the Ndr
	implementation.

	* dlls/wininet/tests/url.c:
	wininet: Fix a failing test.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Fix copying too much data from the buffer by not taking into account
	the fact that auth_pad_len has been included in the fragment length.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Authentication padding should only be generated if there is
	authentication data.

	* include/winbase.h:
	include: Add defines used in CopyFileEx.

	* include/guiddef.h:
	include: Make guiddef.h defines match PSDK.
	Protect LPGUID typedef by __LPGUID_DEFINED__ being defined.
	Protect LPCLSID and LPFMTID typedefs, IsEqualGUID, IsEqualIID,
	IsEqualCLSID, IID_NULL, CLSID_NULL and FMTID_NULL defines by
	__IID_DEFINED__ being defined.

2006-05-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/winproc.c:
	user: Added A<->W mapping for WM_GETDLGCODE.

2006-05-20  Hans Leidekker <hans@it.vu.nl>

	* dlls/quartz/main.c, dlls/quartz/quartz.spec, include/Makefile.in,
	  include/dshow.h, include/errors.h:
	quartz: Add stub implementation for AMGetErrorText{A,W}.

2006-05-21  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c:
	wined3d: Simplify input/output modifier line handling.

	* dlls/wined3d/baseshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Clean up register use maps.

	* dlls/wined3d/drawprim.c:
	wined3d: Allow use of pixel shaders with drawStridedSlow.

	* dlls/wined3d/vertexshader.c:
	wined3d: Only run parse_decl_usage on vshader INPUT registers.

2006-05-22  Saulius Krasuckas <saulius2@ar.fi.lt>

	* dlls/advapi32/tests/security.c:
	advapi32: Skip token attribute testing if OpenProcessToken() is not implemented.

2006-05-21  Saulius Krasuckas <saulius2@ar.fi.lt>

	* dlls/advapi32/tests/security.c:
	advapi32: Make test loadable on win9x.

2006-05-22  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool/test: Disable a test that crashes on win9x.

2006-05-21  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: Remove cross calls W->A for the "Printers" registry path.

2006-05-20  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: An empty string as server name is valid (EnumPrinterDrivers).

2006-05-21  Mike McCormack <mike@codeweavers.com>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction026+027.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_md4.c,
	  dlls/advapi32/tests/crypt_md4.c:
	advapi32: Implement and test SystemFunction011.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Test and implement SystemFunction024/025.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction(012-023).

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_md4.c,
	  dlls/advapi32/tests/crypt_md4.c:
	advapi32: Implement and test SystemFunction010.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction009.

2006-05-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdsapi/ntdsapi.spec:
	ntdsapi: Add DsMakeSpnA to the spec file.

2006-05-20  Vitaliy Margolen <wine-patch@kievinfo.com>

	* tools/wine.inf:
	wine.inf: Create fake dlls for ADPCM codecs.

2006-05-21  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/d3d8/version.rc, dlls/d3d9/version.rc, dlls/ddraw/version.rc,
	  dlls/dmusic/version.rc, dlls/dplayx/version.rc,
	  dlls/dsound/version.rc:
	directx: Update file versions to dx9c (compared to win2k).

2006-05-20  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/d3d9/tests/.gitignore, dlls/d3d9/tests/Makefile.in,
	  dlls/d3d9/tests/device.c:
	d3d9: Add refcount tests for all objects created by device.

	* dlls/d3d9/cubetexture.c, dlls/d3d9/d3d9_private.h,
	  dlls/d3d9/indexbuffer.c, dlls/d3d9/pixelshader.c, dlls/d3d9/query.c,
	  dlls/d3d9/stateblock.c, dlls/d3d9/swapchain.c, dlls/d3d9/texture.c,
	  dlls/d3d9/volumetexture.c:
	d3d9: All objects created by device should keep reference to it.

	* configure, configure.ac, dlls/d3d8/Makefile.in,
	  dlls/d3d8/tests/.gitignore, dlls/d3d8/tests/Makefile.in,
	  dlls/d3d8/tests/device.c, programs/winetest/Makefile.in:
	d3d8: Add refcount test.

	* dlls/d3d8/cubetexture.c, dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/indexbuffer.c, dlls/d3d8/swapchain.c, dlls/d3d8/texture.c,
	  dlls/d3d8/vertexshader.c, dlls/d3d8/volumetexture.c:
	d3d8: All objects created by device should keep reference to it.

	* include/d3d8.h:
	include: SwapChain::GetBackBuffer takes 3 parameters, not 4.

2006-05-20  Robert Shearman <rob@codeweavers.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Make sure to always have the default pushbutton for wizards as an
	enabled button.

	* dlls/comctl32/propsheet.c:
	comctl32: A PSM_SETWIZBUTTONS message specifying PSWIZB_FINISH or
	PSWIZB_DISABLEDFINISH, followed by another one without those flags
	should show the next button again and hide the finish button.

2006-05-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/winproc.c:
	user: Get rid of the WINPROC_Map/UnmapMsg32ATo32W functions.

	* dlls/user/winproc.c:
	user: Added fast A->W mapping for the remaining messages.

	* dlls/user/winproc.c:
	user: Added fast A->W mapping for WM_GETTEXTLENGTH and related messages.

	* dlls/user/winproc.c:
	user: Added fast A->W mapping for WM_CHAR and related messages.

	* dlls/user/winproc.c:
	user: Added fast A->W mapping for EM_GETLINE.

	* dlls/user/winproc.c:
	user: Added fast A->W mapping for LB_GETTEXT and CB_GETLBTEXT.

	* dlls/user/winproc.c:
	user: Added fast A->W mapping for WM_SETTEXT and related messages.

	* dlls/user/winproc.c:
	user: Added fast A->W mapping for WM_GETTEXT and WM_ASKCBFORNAME.

	* dlls/user/winproc.c:
	user: Added fast A->W mapping for WM_MDICREATE.

	* dlls/user/winproc.c:
	user: Added fast A->W mapping for WM_CREATE and WM_NCCREATE.

2006-05-19  Peter Beutner <p.beutner@gmx.net>

	* dlls/d3d8/cubetexture.c, dlls/d3d8/surface.c, dlls/d3d8/texture.c,
	  dlls/d3d8/volume.c:
	d3d8: Fix GetDesc and GetLevelDesc for surfaces and textures.
	In DX8 the D3DSURFACE_DESC structure has a size field which needs to be set.

2006-05-18  Jason Green <jave27@gmail.com>

	* dlls/wined3d/baseshader.c:
	wined3d: Simplify generate_base_shader() when checking for USING_GLSL usage.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c:
	wined3d: Move PARAM C[] program.env[] into baseshader and out of vertex shaders.

2006-05-19  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Handle pointers to context handles in the stubless code.
	Implement check for NULL context handles if requested.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: We don't need to free object pointers if we are told we must allocate.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Use macros to generate the code for unmarshaling base types.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Don't set the memory pointer to NULL before calling PointerUnmarshall.
	Call it with fMustAlloc set to TRUE instead to achieve the same result
	without side-effects.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Make more internal functions static.

	* dlls/rpcrt4/rpc_defs.h, dlls/rpcrt4/rpc_message.c:
	rpcrt4: Add the definition of RpcAuthVerifier to rpc_defs.h from the DCE/RPC
	spec.
	Use it in RPCRT4_SendAuth instead of writing out the data byte-by-byte.

	* include/ndrtypes.h:
	rpcrt4: Add more format characters and add context handle flags to ndrtypes.h.

2006-05-19  Dmitry Timoshkov <dmitry@codeweavers.com>

	* configure, configure.ac, dlls/Makefile.in, dlls/ntdsapi/.gitignore,
	  dlls/ntdsapi/Makefile.in, dlls/ntdsapi/ntdsapi.c,
	  dlls/ntdsapi/ntdsapi.spec, include/Makefile.in, include/ntdsapi.h:
	Add a stub implementation of ntdsapi.dll.

2006-05-19  Paul Chitescu <paulc@voip.null.ro>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/security.c,
	  include/winbase.h:
	advapi32: Add stub FileEncryptionStatus and declarations.

2006-05-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/winproc.c:
	user: Get rid of the MSGPARAMS16 structure.

2006-05-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/winproc.c, dlls/user/winproc.h:
	user: Make a lot of winproc functions static.

	* dlls/user/msg16.c:
	user: Call the A version of message functions from 16-bit code.
	This avoids having to export too many different message translation
	functions.

	* dlls/user/hook16.c, dlls/user/winproc.c, dlls/user/winproc.h:
	user: Use winproc callbacks instead of message map/unmap for 16-bit hooks.

	* dlls/user/msg16.c, dlls/user/winproc.c, dlls/user/winproc.h:
	user: Use winproc callbacks instead of message map/unmap in SendMessage16.

2006-05-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/message.c, dlls/user/winproc.c, dlls/user/winproc.h:
	user: Use a winproc callback instead of a message map/unmap in
	SendMessageTimeoutA.

	* dlls/user/message.c:
	user: Store the destination thread id in the send_message_info structure.

2006-05-18  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c:
	comctl32: header: Make sure no message is sent between
	PrepareCallbackItems/FreeCallbackItems.

	* dlls/comctl32/header.c:
	comctl32: header: Don't erase the background in HEADER_Refresh.

	* dlls/comctl32/header.c:
	comctl32: header: The border size is 4 not 3.

2006-05-19  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Sort of oversized surface support.

2006-05-18  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c:
	wined3d: Add more device caps.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/surface.c:
	wined3d: Allow SYSTEMMEM textures and surfaces.

2006-05-18  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement IWineD3DDevice::SetDisplayMode.

2006-05-19  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Use IsClient to determine whether we can use the Buffer memory or not.
	Add simple struct tests.

2006-05-19  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Warn if CreateNamedPipe fails.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Add the correct amount of auth padding to messages.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Wait for all of the requested bytes to be returned for tcp connections.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/ndr_ole.c,
	  dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_message.c:
	rpcrt4: Update the todo lists and copyrights.

2006-05-18  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Fix for the open functions in the transports being transposed between
	ncacn_np and ncalrpc.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Don't release the auth info if it isn't present.

2006-05-19  Robert Reif <reif@earthlink.net>

	* dlls/winmm/tests/wave.c:
	winmm: Fix wave test handle use after close bug.

2006-05-19  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/x11drv/winpos.c:
	x11drv: Fix the regression caused by the recent ShowWindow fixes.

2006-05-19  Mike McCormack <mike@codeweavers.com>

	* dlls/secur32/ntlm.c:
	secur32: Cleanup InitializeSecurityContext (reduce indent and duplication).

	* dlls/secur32/ntlm.c:
	secur32: Tidy up the initialization code a little.

2006-05-18  Jacek Caban <jacek@codeweavers.com>

	* tools/widl/typelib.c:
	widl: Don't add importlib if it is already on the list. Remove warning.

	* tools/widl/write_msft.c:
	widl: Added support for importing parent interfaces from importlib.

	* dlls/shdocvw/client.c:
	shdocvw: Return S_OK in OnInPlaceDeactivate.

2006-05-18  Phil Costin <philcostin@hotmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c:
	wined3d: Trace output corrections and cleanups.

2006-05-18  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/store.c:
	crypt32: Move CertFindCertificateInStore and related functions to cert.c.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/serialize.c,
	  dlls/crypt32/store.c:
	crypt32: Move context interface definition to common header.

2006-05-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/winproc.c, dlls/user/winproc.h:
	user: Convert the 16-bit winproc functions to use a callback pointer.

	* dlls/user/winproc.c:
	user: Convert the other winproc 32-bit functions to use a callback pointer.

	* dlls/user/winproc.c, dlls/user/winproc.h:
	user: Make WINPROC_CallProc32WTo32A take a callback function pointer.
	This way it doesn't need to know about dialog procedures. Also renamed
	it to WINPROC_CallProcWtoA.

2006-05-18  Phil Costin <philcostin@hotmail.com>

	* dlls/wined3d/directx.c, dlls/wined3d/wined3d_main.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Check registry for UseGLSL enabled.

2006-05-18  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Fix a possible memory leak, cleanup a bit.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_transport.c,
	  dlls/rpcrt4/tests/rpc.c:
	rpcrt4: Fix and test RpcNetworkIsProtseqValid.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Add a stub implementation for RpcMgmtIsServerListening.

2006-05-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/tests/dialog.c:
	user: Fixed a broken trace in the dialog test.

	* dlls/user/winproc.c:
	user: Added helper functions for A<->W conversion of single characters.

	* dlls/user/winproc.c:
	user: Simplify 16-bit mappings of the WM_GETDLGCODE message.

	* dlls/user/winproc.c:
	user: Unify the mapping of listbox and combobox messages.

	* dlls/user/winproc.c:
	user: Get rid of the WINPROC_MapMsg32WTo32A function.

	* dlls/user/winproc.c:
	user: Added fast W->A mapping for WM_IME_CHAR.

	* dlls/user/winproc.c:
	user: Added fast W->A mapping for WM_CHAR and related messages.

	* dlls/user/winproc.c:
	user: Added fast W->A mapping for EM_GETLINE.

	* dlls/user/winproc.c:
	user: Added fast W->A mapping for LB_GETTEXT and CB_GETLBTEXT.

	* dlls/user/winproc.c:
	user: Added fast W->A mapping for LB_ADDSTRING and related messages.

	* dlls/user/winproc.c:
	user: Added fast W->A mapping for WM_MDICREATE.

	* dlls/user/winproc.c:
	user: Added fast W->A mapping for WM_SETTEXT and related messages.

	* dlls/user/winproc.c:
	user: Added fast W->A mapping for WM_GETTEXT and WM_ASKCBFORNAME.

	* dlls/user/winproc.c:
	user: Added helper functions for buffer management in WINPROC_CallProc32WTo32A..

	* dlls/user/winproc.c:
	user: Merged WINPROC_CallProc32WTo32A_fast into WINPROC_CallProc32WTo32A.

2006-05-17  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/store.c:
	crypt32: Add stubs for CertDuplicateCRLContext and CertDuplicateCTLContext.

2006-05-16  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/user/message.c:
	user32: Allow interprocess WM_NCPAINT messages when wParam is 0 or 1.

2006-05-18  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Implement RpcBindingSetAuthInfoExW based on the implementation for
	RpcBindingSetAuthInfoExA.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: A NULL AuthInfo is allowed.
	Pass the server principal name into AcquireCredentialsHandleA.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Support all available security packages in RpcBindingSetAuthInfoExA,
	instead of just NTLM.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Only use the cached connection if the authentication information
	is compatible.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_server.c,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Store non-connection-specific authentication information in a ref-counted
	structure that is shared between connections and bindings.

	* dlls/rpcrt4/ndr_ole.c:
	rpcrt4: Fix an off-by-one error when checking the size of the buffer in
	NdrInterfacePointerMarshall.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Handle interface pointers in EmbeddedComplexSize.

	* dlls/rpcrt4/Makefile.in:
	rpcrt4: Make secur32 into a delayed import, as most of the time it won't
	be needed.

	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_message.c,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Increment the call id field of the request header.
	This is necessary for compatibility with MS/RPC servers.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NdrNonEncapsulatedUnionMemorySize.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix the wire protocol of the user marshal functions to match MS/RPC.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: If the authorisation failed during a send then we should return
	ERROR_ACCESS_DENIED.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix NdrConformantArrayMemorySize.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NdrUserMarshalMemorySize.

2006-05-17  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Take predication tokens into account.
	Each instruction can have a predication token. Account for it in the
	trace pass, register count pass, and store it in the SHADER_OPCODE_ARG
	structure for generation. MSDN claims the token is at the end of the
	instruction, but that's not true - testing a demo, which lets me
	manipulate the shader shows the predication token is the first source
	token immediately following the destination token.

	* dlls/wined3d/baseshader.c:
	wined3d: Parameter trace corrections.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: SETP takes 3 parameters.

2006-05-17  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/.gitignore,
	  dlls/rpcrt4/tests/Makefile.in, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Don't update StubMsg->MemorySize while unmarshaling.
	Add a bunch of marshaling tests (based on a program by Rob Shearman).

2006-05-16  Andrew Ziem <ahziem1@mailbolt.com>

	* dlls/kernel/tests/path.c:
	kernel: Fix path test to pass on 95 and 98.

2006-05-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/client.c, dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Code cleanup.

	* dlls/shdocvw/ie.c:
	shdocvw: Added IConnectionPointContainer to InternetExplorer::QueryInterface.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/events.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Move IConnectionPointContainer implementation to separated object.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/events.c, dlls/shdocvw/navigate.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Move connection points to the new ConnectionPointContainer struct.

2006-05-15  Jacek Caban <jacek@codeweavers.com>

	* tools/widl/typelib.c, tools/widl/typelib_struct.h,
	  tools/widl/widltypes.h:
	widl: Added importlib reading implementation.

2006-05-17  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c:
	comctl32: header: Don't erase the left header egde.

	* dlls/comctl32/header.c:
	comctl32: header: Send the width in HDN_BEGINTRACK.

	* dlls/comctl32/listview.c:
	comctl32: listview: Recompute sizes after a column deletion.

2006-05-17  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_ole.c:
	rpcrt4: Implement NdrInterfacePointerMemorySize.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Make some functions that aren't used outside of the file static.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fill out more of the function tables with functions that already exist.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Raise an exception if there is no default handler for a union.

2006-05-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/winproc.c:
	user: The result for dialog procedures is stored in DWLP_MSGRESULT.
	So we have to access it using Get/SetWindowLong when unmapping the
	message results (based on a patch by Troy Rollo).

	* dlls/user/defdlg.c:
	user: Remove unreachable code in DEFDLG_Proc.

	* dlls/user/class.c, dlls/user/message.c, dlls/user/win.c,
	  dlls/user/winproc.c, dlls/user/winproc.h:
	user: Support storing multiple winprocs in a single winproc handle.
	Allows to remove special cases for window classes being Ascii and
	Unicode at the same time.

	* dlls/user/winproc.c:
	user: Allocate 16-bit thunks separately from the window proc structure.
	Also make sure the thunk memory block has execute permissions.

	* dlls/x11drv/clipboard.c:
	x11drv: Fixed typo in the clipboard XA_STRING handling.

2006-05-09  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/gdi/bitmap.c, dlls/gdi/gdi_private.h, dlls/gdi/tests/bitmap.c,
	  dlls/x11drv/bitmap.c, dlls/x11drv/winex11.drv.spec:
	gdi: Fix GetObject for bitmaps.
	- GetObject(): Set the bmBits member of the BITMAP structure to NULL
	for device-dependent bitmaps.
	- New test case.

2006-05-11  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: Fix OpenDriverReg on top of validate_envW.

	* dlls/winspool/tests/info.c:
	winspool/tests: More tests for OpenPrinter.

2006-05-12  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: Do not fail in OpenPrinter on pDefault / local print server.

	* dlls/winspool/info.c:
	winspool: Show SetPrinter parameters in the FIXME.

	* dlls/winspool/tests/info.c:
	winspool/tests: A truncated dmDeviceName is 0-terminated.

2006-05-17  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c:
	wined3d: Use COLOROUT/DEPTHOUT for pixel shaders 2.0+.
	As previously mentioned, RASTOUT is invalid on pixel shaders.
	On shaders 1.x, r0 is treated as the color output register:
	http://www.gamedev.net/columns/hardcore/dxshader3/page2.asp
	That's what we currently do in all cases, change it not to do so
	for shaders >= 2.0. Support COLOROUT/DEPTHOUT instead.

	* dlls/wined3d/vertexshader.c:
	wined3d: LRP is not a valid ARBvp code.

	* dlls/wined3d/pixelshader.c:
	wined3d: Remove detailed traces from map2gl/input_modifiers functions.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Write "unrecognized_register" in fallback case for get_register_name().

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Modify shader_dump_param() to take into account address token.
	Currently we hardcode a0.x, which I think is correct for shaders 1.0.
	However, for shaders 2.0, we must look into the address token, and
	print the register there. Handle both cases to correct the trace.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Use shader_get_param() in trace pass, reg. count pass, generation pass.
	Change the trace pass, the register counting pass, and the hw
	generator pass to take into account the new get_params() function. For
	hw generation, store the address tokens into the SHADER_OPCODE_ARG
	structure, so they're available to generator functions.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add shader_get_param() fn, which processes address tokens.
	Add a new function to process parameters.
	On shaders 1.0, processing parameters amounts to *pToken++.
	On shaders 2.0+, we have a relative addressing token to account for.
	This function should be used, instead of relying on num_params everywhere.

	* dlls/wined3d/baseshader.c:
	wined3d: Do not rely on num_params to skip unhandled tokens in shaders 2.0.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c:
	wined3d: Allow multiple output modifiers.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Fix SINCOS parameters.
	SINCOS has 4 parameters in shaders 2.0.
	It has 2 parameters in shaders 3.0.
	It's undefined in shaders 1.0.

	* dlls/wined3d/vertexshader.c:
	wined3d: DEFI takes 5 parameters.
	According the spec and the Painkiller log, DEFI has 5 parameters on
	vertex shaders.

2006-05-17  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/msg.c, dlls/x11drv/winpos.c:
	user32: Make all the recently added ShowWindow tests pass in Wine.

2006-05-16  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/ntdll/tests/info.c:
	ntdll/tests: Don't fail if a process is not available.

2006-05-16  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/usp10/usp10.c:
	usp10: Fix ScriptGetProperties so that first pointer can be NULL.

	* programs/winedbg/types.c:
	winedbg: extract_as_integer
	- now supporting extract_as_integer on functions (so that,
	for example, 'disas foo' works as expected)
	- now properly handling errors when calling extract_as_integer

2006-05-16  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/store.c:
	crypt32: Get rid of CRYPT_CreateCertificateContext, it's not needed anymore.

2006-05-17  Marcus Meissner <marcus@jet.franken.de>

	* dlls/riched20/tests/editor.c:
	riched20: Removed useless double casts, just print the DWORD hexmask.

2006-05-15  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/decode.c, dlls/crypt32/encode.c:
	crypt32: Split the unwieldy encode.c into two files.

2006-05-16  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/store.c:
	crypt32: Support CERT_ISSUER_SERIAL_NUMBER_MD5_HASH_PROP_ID implicit property.

	* dlls/crypt32/store.c:
	crypt32: Use the caller-supplied encoding type when decoding certs.

	* dlls/crypt32/tests/store.c:
	crypt32: Add more tests for adding certs to a store.

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/tests/cert.c, include/wincrypt.h:
	crypt32: Implement CertCompare functions, with tests.

2006-05-16  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c, dlls/comctl32/tests/header.c:
	comctl32: header: Fix INSERTITEM on a zero mask and GETITEM on a mask with
	unknown fields.
	INSERTITEM should fail on a zero mask. If in GETITEM the mask has an
	unknown field it should store only the comctl32 4.0 fields (with test
	case).

	* dlls/comctl32/header.c, dlls/comctl32/tests/header.c:
	comctl32: header: Copy some fields on INSERTITEM even if they are not in
	the mask.

	* dlls/comctl32/header.c, dlls/comctl32/tests/header.c:
	comctl32: header: Automatically set some format fields.

2006-05-16  Peter Beutner <p.beutner@gmx.net>

	* dlls/msvcrt/tests/printf.c, dlls/msvcrt/wcs.c:
	msvcrt: Fix handling of 'h' prefix in swprintf.
	- '%hs' in widechar string functions is wrongly recognized as
	a widechar string. Fix this by always checking the prefix first.
	- add testcase
	- remove code duplication in %c/%s handling by moving code into a function.

2006-05-16  Mike McCormack <mike@codeweavers.com>

	* dlls/wininet/tests/Makefile.in, dlls/wininet/tests/http.c:
	wininet: Add a standalone http test.

	* dlls/wininet/ftp.c:
	wininet: Make sure hIC is valid before trying to use it. (Coverity)

2006-05-16  Vitaliy Margolen <wine-patch@kievinfo.com>

	* include/d3d9types.h, include/wine/wined3d_types.h:
	d3d: Add D3DDEVTYPE_NULLREF definition.

2006-05-16  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/modify.c, dlls/wldap32/modrdn.c:
	wldap32: Document the modify and modrdn functions.

2006-05-15  Andrew Ziem <ahziem1@mailbolt.com>

	* dlls/kernel/tests/path.c:
	kernel: Properly delete a test file.

2006-05-16  Alexandre Julliard <julliard@winehq.org>

	* tools/config.guess, tools/config.sub, tools/install-sh:
	tools: Updated the autoconf scripts to more recent versions.

2006-05-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/msg.c:
	user32: Add more ShowWindow tests.
	Move ShowWindow tests for children with an invisible parent into a
	separate test, add more ShowWindow tests. The tests show that an
	assumption in dlls/x11drv/winpos.c that SetWindowPos should not be
	called on a child with an invisible parent is not always true.

2006-05-16  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wined3d/vertexshader.c:
	wined3d: Correctly define the number of possible parameters.

2006-05-15  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement fixed array functions.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Remove the BUFFER_PARANOIA overestimates for string memory sizes.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement computing of conformance from a correlation descriptor for
	conformant strings.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix conformant varying structs to comply to the DCE/RPC spec.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Don't duplicate the conformance calculating code, just use the
	common ComputeConformance function to store the result in
	pStubMsg->MaxCount (as this is what callback function store the
	conformance value into anyway).

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement conformant varying struct functions.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement more conformance operations and more types.

2006-05-15  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c:
	shdocvw: Don't release IOleInPlaceSite in DoVerb.

2006-05-15  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Unset the ddraw primary when it is released.

	* dlls/wined3d/utils.c:
	wined3d: Add missing render states to the dumping function.

	* dlls/wined3d/device.c:
	wined3d: Implement IWineD3DDevice::SetFrontBackBuffers.

2006-05-15  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c, dlls/riched20/editstr.h,
	  dlls/riched20/tests/editor.c, dlls/riched20/undo.c:
	riched20: Implement EM_SETUNDOLIMIT and its conformance tests.

2006-05-15  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/encode.c:
	crypt32: Test importing public keys from a certificate.

	* dlls/crypt32/tests/store.c:
	crypt32: Avoid a use-after-free bug in tests.

2006-05-15  Mike McCormack <mike@codeweavers.com>

	* dlls/wininet/internet.c, dlls/wininet/tests/internet.c:
	wininet: Return correct errors in InternetOpenUrlW.

	* dlls/wininet/internet.c, dlls/wininet/tests/internet.c:
	wininet: Return correct errors in InternetConnectW

	* dlls/rpcrt4/Makefile.in, dlls/rpcrt4/rpc_binding.c,
	  dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_message.c:
	rpcrt4: Implemented NTLM authentication for rpcrt4 connections.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Use RPCRT4_Receive rather than accessing the transport directly.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction005.

2006-05-15  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NdrSimpleStructMemorySize.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix the conformant struct functions to not call conformant array
	functions.
	The conformance has to be the first thing in the buffer, in accordance
	with the DCE/RPC spec and to be compatible with the pointer layout
	format strings that MIDL generates.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: In NdrConformantBufferSize, SizeConformance should be called, not
	SizeVariance.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Save pStubMsg->ActualCount in a local variable in the complex
	array functions, before calling a function that could change it and
	cause the wrong number of loop iterations.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Dereference the memory for pointers in NdrNonEncapsulatedUnionUnmarshall.
	Pointers in a non-encapsulated union behave like embedded pointers, so
	don't rely on the NdrPointer* functions doing the right thing in this
	case and call the Pointer* functions directly.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Rename ComplexStructSize to ComplexStructMemorySize to reflect the
	fact that it increments the buffer.
	Replace the code in EmbeddedComplexSize that sizes non-encapsulated
	unions without using a memory sizer routine, since this function
	shouldn't touch the buffer.
	Add a new function EmbeddedComplexMemorySize and use it in some memory
	sizer routines where EmbeddedComplexSize was previously used.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix embedded pointers in arrays by taking into account the iteration
	when calculating the appropriate memory and buffer pointers.

2006-05-14  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Shaders: share dump_param function, version functions.

	* dlls/wined3d/stateblock.c:
	wined3d: Fix incorrect sizeof.

2006-05-13  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/gdi/font.c:
	gdi: Duplicate extent value for the second byte of a DBCS char.

2006-05-15  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, libs/Makelib.rules.in, libs/wine/Makefile.in:
	configure: Make libraries properly relocatable on MacOS.
	Also set the compatibility version.

2006-05-12  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/security.c, dlls/cfgmgr32/main.c, dlls/gdi/freetype.c,
	  dlls/mprapi/mprapi.c, dlls/ntdll/sync.c, dlls/ole32/usrmarshal.c,
	  dlls/usp10/usp10.c:
	Fix some winapi_check documentation warnings.

	* dlls/d3d9/pixelshader.c, dlls/ddraw/tests/d3d.c,
	  dlls/gdi/tests/bitmap.c, dlls/kernel/tests/toolhelp.c,
	  dlls/msi/tests/msi.c, dlls/ole32/tests/moniker.c,
	  dlls/wined3d/baseshader.c, dlls/winspool/info.c:
	Various trace fixes.
	Add trailing '\n's to trace calls.
	Remove spaces before '\n'.

	* configure, configure.ac, dlls/advpack/tests/install.c,
	  dlls/msi/action.c, dlls/user/tests/wsprintf.c,
	  dlls/wined3d/surface.c, dlls/x11drv/dib.c:
	Assorted spelling fixes.

2006-05-14  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/header.c:
	comctl32: header: Check for HDN_GETDISPINFO not being sent during INSERT/SETITEM.

2006-05-13  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/listview.c:
	comctl32: listview: Store the iSubItem in header's lParam in LVM_INSERTCOLUMN.

	* dlls/comctl32/header.c:
	comctl32: header: Correct HDN_GETDISPINFO. Use it during drawing.
	Improve HEADER_SendHeaderDispInfoNotify and rename it to
	HEADER_PrepareCallbackItems. The new HEADER_FreeCallbackItems frees
	the buffers allocated by it. GetItemT and DrawItem calls these
	functions.

	* dlls/comctl32/header.c:
	comctl32: header: Mark the callback items in a mask.
	Mark the callback items in the callbackMask HEADER_ITEM field. The
	pszText for callback texts is now NULL what simplifies some
	checks. Checks for lpItem->pszText==emptyString are also not needed as
	emptyString is not stored in lpItem but used as a parameter to
	Str_SetPtr (I haven't noticed it).

	* dlls/comctl32/header.c:
	comctl32 header: Free the old string also when the new one is LPSTR_TEXTCALLBACK.

	* dlls/comctl32/header.c:
	comctl32: header: Don't modify the user supplied HDITEM during Set/InsertItem.

	* dlls/comctl32/header.c:
	comctl32: header: Move common code from SetItemT/InsertItemT into a new function.

	* dlls/comctl32/header.c:
	comctl32: header: Don't send HDN_GETDISPINFO during HDM_SET/INSERTITEM.

	* dlls/comctl32/header.c:
	comctl32: header: Don't check lpItem for NULL in GetItemT.

2006-05-11  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/events.c, dlls/shdocvw/ie.c, dlls/shdocvw/iexplore.c,
	  dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/shdocvw_main.c, dlls/shdocvw/shlinstobj.c,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Wrap Heap* finctions by inline functions.

2006-05-15  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Update the marshal state buffer size when resizing (Doh!).

2006-05-14  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/msvcrt/tests/time.c:
	msvcrt: Fix times tests to pass on windows.
	Add more tests for daylight-time savings.

2006-05-13  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/nt.c, include/wine/server_protocol.h, server/protocol.def,
	  server/request.h, server/token.c, server/trace.c:
	server: Retrieve the groups for a token from the server.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: The arm type mask should be comparing the highest byte against 0x80,
	as documented on MSDN.
	Fix base type arm handling on little-endian machines, as the current
	code would always pass in the address to the format char of 0x80
	instead of the base type format char.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Make ComplexStructSize increment the buffer.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Pass in the buffer value before incrementing to PointerMarshall in
	NdrPointerMarshall.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NdrComplexStructMemorySize.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NdrComplexArrayMemorySize.

	* dlls/rpcrt4/rpc_defs.h:
	rpcrt4: Fix the fault packet structure to comply with the DCE/RPC specification.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: The NDR memory sizing functions should increment the buffer pointer,
	so make sure to save it before calling one of these and restore it afterwards.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Make NdrBaseTypeMemorySize increment the buffer and memory size fields
	of MIDL_STUB_MESSAGE.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Make NdrConformantStringUnmarshall use the new Read{Variance,Conformance}
	functions and adapt them to be callable without having a correlation
	descriptor.

	* dlls/advapi32/tests/security.c:
	advapi32: Add tests for getting the groups, user and privileges of a token.

2006-05-14  Mike McCormack <mike@codeweavers.com>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt.h,
	  dlls/advapi32/crypt_arc4.c, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction004.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction003.

2006-05-12  Mike McCormack <mike@codeweavers.com>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt.h,
	  dlls/advapi32/crypt_des.c, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction002 (DES decrypt).

2006-05-14  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c:
	wined3d: Avoid a NULL dereference in RealizePalette.

2006-05-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Render state additions and fixes.

	* dlls/wined3d/surface.c:
	wined3d: Nonpow2 repacking support for GetDC.

2006-05-13  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/swapchain.c:
	wined3d: Support for single buffering.

2006-05-13  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/Makefile.in, dlls/wined3d/device.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement IWineGDISurface.

2006-05-12  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement IWineD3DDevice::ProcessVertices.

2006-05-12  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_defs.h:
	rpcrt4: Add missing PKT_AUTH3 packet type.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Add infrastructure for send authentication data.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Forward RpcBindingSetAuthInfo to RpcBindingSetAuthInfoEx.

2006-05-13  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/tests/name.c:
	dnsapi: Add tests for DnsValidateName_A.

2006-05-14  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/gphoto2.ds/gphoto2_i.h:
	gphoto2.ds: Fix a typo in a #warning, and slight rewording.  Fix grammaro
	in comment.

2006-05-13  Jacek Caban <jacek@codeweavers.com>

	* tools/widl/write_msft.c:
	widl: Added RPC_FC_ENUM16 encoding.

	* tools/widl/typelib_struct.h, tools/widl/write_msft.c:
	widl: res50 is number of impinfos. Fix its usage.

	* dlls/oleaut32/typelib.h, dlls/oleaut32/typelib2.c:
	oleaut32: res50 is number of impinfos. Fix its usage.

2006-05-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/protocol.c, dlls/urlmon/tests/url.c:
	urlmon: Fix tests.

	* dlls/shdocvw/navigate.c:
	shdocvw: Added support for navigation to application URLs.

	* dlls/mshtml/protocol.c, dlls/mshtml/tests/protocol.c:
	mshtml: Fix protocol tests on XP. Make Wine match XP implementation.

2006-05-13  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/ntdll/tests/port.c:
	ntdll: Fix endless loop in port test for users without admin rights.

2006-05-12  Francois Gouget <fgouget@free.fr>

	* dlls/gphoto2.ds/ds_ctrl.c, dlls/gphoto2.ds/ds_image.c,
	  dlls/gphoto2.ds/gphoto2_i.h, dlls/gphoto2.ds/ui.c:
	gphoto2.ds: Spelling fix.

	* include/mprapi.h:
	mprapi: Add FIXME for the missing in6addr.h include.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Fix some conditional includes.
	Check for HAVE_UNISTD_H before including unistd.h.
	There is no HAVE_SYS_TYPES to check.
	Tweak the indentation of a few #include directives.

	* include/dmusici.h, include/rpcdce.h:
	include: Remove uneeded __RPC_FAR references.

	* tools/winapi/c_parser.pm, tools/winapi/winapi_local.pm,
	  tools/winapi/winapi_parser.pm:
	winapi: Add support for APIENTRY.
	Factorize a couple of call convention matching regular expressions.

2006-05-12  Francois Gouget <fgouget@codeweavers.com>

	* dlls/ole32/tests/storage32.c:
	ole32: Fix compilation with gcc 2.95.

2006-05-12  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fix converting file name to Unicode.
	Fix converting the typelib file name to Unicode by using the correct
	buffer size.

2006-05-11  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/encode.c, dlls/crypt32/oid.c,
	  dlls/crypt32/serialize.c, dlls/crypt32/store.c,
	  dlls/crypt32/tests/cert.c, dlls/crypt32/tests/encode.c,
	  dlls/crypt32/tests/main.c, dlls/crypt32/tests/oid.c,
	  dlls/crypt32/tests/store.c:
	crypt32: Use the HRESULT synonyms for converted Win32 error codes.

2006-05-12  Mike McCormack <mike@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Remove broken code for HTTP_QUERY_FLAG_COALESCE, which is unimplemented
	according to MSDN.

	* dlls/wininet/ftp.c:
	wininet: Check for null parameters in FtpSetCurrentDirectoryW.

2006-05-14  Mike McCormack <mike@codeweavers.com>

	* server/registry.c:
	server: Avoid a crash if a registry notify event has been set already.

2006-05-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/stack.c, programs/winedbg/tgt_active.c:
	winedbg: Fixed regression for command 'bt all'.
	Don't print 'process has terminated' message when detaching from a
	process (or backtracing it).

2006-05-12  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/serial.c:
	ntdll: Fix serial timeout regression.

2006-05-11  Alexandre Julliard <julliard@winehq.org>

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

----------------------------------------------------------------
2006-05-10  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/kernel/tests/toolhelp.c:
	kernel:	Fix CreateToolhelp32Snapshot tests on win2k.

2006-05-10  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/msc.c,
	  dlls/dbghelp/mscvpdb.h, dlls/dbghelp/path.c:
	dbghelp: SymFindFileInPath and PDB
	- implemented correct lookup when SymFindFileInPath is called to find
	a PDB file
	- added pdb_fetch_file_info to gather relevant information
	- when looking for a PDB file (from a .EXE or a .DLL), now using
	SymFindFileInPath to locate the PDB file with the correct
	information

	* dlls/dbghelp/module.c:
	dbghelp: Removed call to registered callback when unloading a module.
	First, native dbghelp doesn't do it, and it crashed windbg, likely
	because we got the undocumented arguments wrong.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/symbol.c, include/dbghelp.h:
	dbghelp: Implemented SymSearchW.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/symbol.c, include/dbghelp.h:
	dbghelp: Implemented SymEnumSymbolsW.

	* dlls/dbghelp/symbol.c:
	dbghelp: Improved SymSearch (now using tag, index and address).

	* dlls/dbghelp/symbol.c:
	dbghelp: Factorize and simplify a bit symbol enumeration code.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/source.c, include/dbghelp.h:
	dbghelp: Stubbed SymGetSourceFileTokenW.

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/dbghelp.spec,
	  dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/symbol.c,
	  include/dbghelp.h:
	dbghelp: Implemented SymGetLineFromAddrW64.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/symbol.c, include/dbghelp.h:
	dbghelp: Implemented SymFromAddrW.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/module.c, include/dbghelp.h:
	dbghelp: Implemented SymGetModuleInfoW and SymGetModuleInfoW64.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/module.c, include/dbghelp.h:
	dbghelp: Implemented SymLoadModuleExW.

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/dbghelp.spec,
	  dlls/dbghelp/dbghelp_private.h, include/dbghelp.h:
	dbghelp: Implemented SymRegisterCallbackW64 and 64 -> 64W mapping function.

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/dbghelp.spec,
	  dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/path.c,
	  dlls/dbghelp/pe_module.c, include/dbghelp.h:
	dbghelp: SymInitializeW.
	- implemented SymInitializeW (and made SymInitialize call it)
	- implemented Sym{SG}etSearchPathW (and made Sym{SG}etSearchPath
	call them)
	- per process search path is now stored as unicode string

	* dlls/dbghelp/dbghelp.spec:
	dbghelp: Updated spec file.

2006-05-10  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/device.c:
	wined3d: Set pIndexData to 0 in DrawIndexedPrimitiveUP.

	* dlls/wined3d/volume.c, dlls/wined3d/wined3d_private.h:
	wined3d: Initialize volume format.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Share shader_dump_ins_modifiers().
	Share shader_dump_ins_modifiers(), and make vertex shaders use it.
	The saturate modifer (_sat) is valid on vs_3_0+, and it isn't being
	shown in the trace.

2006-05-10  Robert Reif <reif@earthlink.net>

	* dlls/winmm/tests/wave.c:
	winmm: Fix wave test volume warning.
	Volume is only valid when sound card has volume support.

2006-05-11  Mike McCormack <mike@codeweavers.com>

	* dlls/wininet/dialogs.c:
	wininet: Fix a typo (spotted by Coverity).

	* dlls/advapi32/crypt_arc4.c:
	advapi32: Fix a typo (spotted by Peter Berg Larsen).

2006-05-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/defdlg.c, dlls/user/icontitle.c, dlls/user/mdi.c,
	  dlls/user/nonclient.c, dlls/user/winpos.c:
	user: Prefer SendMessageW over SendMessageA where possible.

	* dlls/x11drv/event.c, dlls/x11drv/winpos.c:
	x11drv: Prefer SendMessageW over SendMessageA where possible.

2006-05-10  Francois Gouget <fgouget@free.fr>

	* tools/winapi/winapi_parser.pm:
	winapi_check: Fix 'long int' parsing.
	Fix parsing of 'long int'.
	Simplify handling of spaces in a couple of regular expressions.

2006-05-10  Robert Shearman <rob@codeweavers.com>

	* dlls/amstream/regsvr.c, dlls/avifil32/regsvr.c, dlls/comcat/regsvr.c,
	  dlls/d3dxof/regsvr.c, dlls/ddraw/regsvr.c, dlls/dinput/regsvr.c,
	  dlls/dmband/regsvr.c, dlls/dmcompos/regsvr.c, dlls/dmime/regsvr.c,
	  dlls/dmloader/regsvr.c, dlls/dmscript/regsvr.c,
	  dlls/dmstyle/regsvr.c, dlls/dmsynth/regsvr.c, dlls/dmusic/regsvr.c,
	  dlls/dplayx/regsvr.c, dlls/dpnet/regsvr.c, dlls/dsound/regsvr.c,
	  dlls/dswave/regsvr.c, dlls/dxdiagn/regsvr.c,
	  dlls/hhctrl.ocx/regsvr.c, dlls/itss/regsvr.c, dlls/mlang/regsvr.c,
	  dlls/msi/regsvr.c, dlls/objsel/regsvr.c, dlls/ole32/regsvr.c,
	  dlls/oleaut32/regsvr.c, dlls/quartz/regsvr.c, dlls/shdocvw/regsvr.c,
	  dlls/shell32/regsvr.c, dlls/urlmon/regsvr.c:
	Check the return value from register_key_guid in all the DLL registering code.

2006-05-09  Bernd Buschinski <b.buschinski@web.de>

	* dlls/ntdll/file.c:
	ntdll: Stub implementation of FSCTL_LOCK_VOLUME/FSCTL_UNLOCK_VOLUME.

2006-05-09  James Hawkins <truiken@gmail.com>

	* dlls/ntdll/tests/.gitignore, dlls/ntdll/tests/Makefile.in,
	  dlls/ntdll/tests/port.c:
	ntdll: Add initial tests for the NT Ports API.

2006-05-10  Mike McCormack <mike@codeweavers.com>

	* dlls/advapi32/Makefile.in, dlls/advapi32/advapi32.spec,
	  dlls/advapi32/crypt_arc4.c, dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction032 (arc4 encryption).

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_md4.c,
	  dlls/advapi32/tests/crypt_md4.c:
	advapi32: Implement and test SystemFunction007.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction001.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction008.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Cache the connection so we don't rebind on every call.

2006-05-10  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/moniker.c:
	ole32: Add a test for IMoniker_IsDirty.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Use the buffer passed in as an argument and don't increment
	the buffer in the MIDL_STUB_MESSAGE in the inner pointer
	marshalling/unmarshalling routines as these can be used for embedded
	pointers, which handle the allocating or finding of the buffer
	themselves. Do the incrementing in the outer
	NdrPointerMarshall/Unmarshall/BufferSize routines instead.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Align conformances and variances correctly, according the the DCE/RPC spec.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Move the writing and sizing of variances and conformances to common functions.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Correctly align the buffer to read/write array data to.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Correctly align the buffer before reading/writing structure data.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Rename NonEncapsulatedUnionSize to NdrNonEncapsulatedUnionMemorySize.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Remove unintuitive requirement to pass the required alignment boundary minus one into the alignment macros.

	* dlls/ole32/rpc.c:
	ole32: Exception handling shouldn't be needed around the call to IRpcStubBuffer_Invoke.
	It should have its own exception handler to catch any exceptions that are raised.

2006-05-10  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Correctly handle the case when the number of bytes in a BSTR is odd.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Support VT_SAFEARRAY in the typelib marshaler.
	Based on a patch by Rob Shearman.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Add a function to grow the marshal state buffer to a specified size.

2006-05-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/class.c, dlls/user/wnd16.c:
	user: Moved Get/SetClassLong16 to wnd16.c.

	* dlls/user/class.c, dlls/user/msg16.c, dlls/user/win.c,
	  dlls/user/winproc.c, dlls/user/winproc.h, dlls/user/wnd16.c:
	user: Have WINPROC_GetProc16 allocate a new winproc if necessary.

	* dlls/user/user.exe.spec, dlls/user/winproc.c:
	user: Store the pointer to the winproc in the thunk structure.
	This allows simplifying the handling of 16-bit thunks.

	* dlls/user/class.c, dlls/user/win.c, dlls/user/winproc.c,
	  dlls/user/winproc.h:
	user: Make the WINDOWPROCTYPE enum private to winproc.c.

	* dlls/user/class.c, dlls/user/win.c, dlls/user/winproc.c,
	  dlls/user/winproc.h:
	user: Replace WINPROC_GetProcType by WINPROC_IsUnicode.

	* dlls/user/class.c, dlls/user/message.c, dlls/user/win.c,
	  dlls/user/winproc.c, dlls/user/winproc.h, dlls/user/wnd16.c:
	user: Replace WINDOWPROCTYPE by a unicode flag in WINPROC_GetProc/AllocProc.

	* dlls/user/class.c, dlls/user/win.c, include/win.h:
	user: Add a WIN_ISUNICODE flag instead of relying on the winproc type.
	Also fix the initial value for the server is_unicode flag.

2006-05-09  Jason Green <jave27@gmail.com>

	* dlls/wined3d/baseshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Further split GLSL & ARB_v/f_program generation and allow GLSL functions to be called.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Modified the opcode tables (and struct) to include a pointer to a GLSL generator function.

	* dlls/wined3d/pixelshader.c:
	wined3d: Use GenerateShader in pixel shaders and remove old function.

	* dlls/wined3d/pixelshader.c:
	wined3d: Add GenerateShader function to pixel shaders.

	* dlls/wined3d/vertexshader.c:
	wined3d: Use new GenerateShader function for vertex shaders.

	* dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Added new GenerateShader function for Vertex Shaders & declare generate_base_shader().

	* dlls/wined3d/baseshader.c:
	wined3d: Created generate_base_shader which will be shared by pixel & vertex shaders.

	* dlls/wined3d/vertexshader.c:
	wined3d: Rename the TEMP variables in vertexshader.c to R from T for consistency.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Place # of textures, addresses, & temps used inside the baseShader struct to prepare for GenerateShader merge.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Further split up GenerateProgramArbHW for pixelshaders.

	* dlls/wined3d/vertexshader.c:
	wined3d: Move D3DSIO_M#x# vertex shader opcodes to a more standard function.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Move DCL, DEF operations out of Generate loop and into separate functions.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move program_dump_decl_usage into baseshader.

2006-05-10  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/advapi32/registry.c, dlls/advapi32/security.c, dlls/avifil32/api.c,
	  dlls/avifil32/avifile.c, dlls/avifil32/editstream.c,
	  dlls/ddraw/device_opengl.c, dlls/ddraw/surface_main.c,
	  dlls/iphlpapi/iphlpapi_main.c, dlls/msacm32/internal.c,
	  dlls/mshtml/hlink.c, dlls/msvfw32/msvideo_main.c,
	  dlls/opengl32/wgl.c, dlls/opengl32/wgl_ext.c, dlls/riched20/writer.c,
	  dlls/secur32/secur32.c, dlls/secur32/tests/main.c,
	  dlls/secur32/thunks.c, dlls/urlmon/umon.c, dlls/wined3d/query.c,
	  dlls/wininet/internet.c, dlls/wininet/urlcache.c,
	  dlls/winmm/winealsa/audio.c, dlls/winmm/wineesd/audio.c,
	  dlls/x11drv/xrender.c, programs/regedit/treeview.c,
	  programs/wineboot/wineboot.c, programs/winecfg/audio.c:
	janitorial: Remove redundant NULL pointer checks before HeapFree'ing them.
	Some HeapFree's are hidden behind macros. Found by smatch.

2006-05-09  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Clean up some dead code.

	* dlls/wined3d/pixelshader.c:
	wined3d: Break out texture instruction processing.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Break out arithmetic instruction processing.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Merge register counting pass.

	* dlls/wined3d/vertexshader.c:
	wined3d: Make register counting pass the same.

2006-05-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Update the DIB section's palette on GetDC.

	* dlls/wined3d/palette.c:
	wined3d: Update the device palette if the primary palette is changed.

	* dlls/wined3d/surface.c:
	wined3d: Implement WineD3DSurface palette methods.

	* dlls/wined3d/surface.c:
	wined3d: Implement GetFlipStatus and GetBltStatus.

	* dlls/wined3d/surface.c:
	wined3d: Implement IWineD3DSurface::Flip.

2006-05-09  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/store.c,
	  dlls/crypt32/tests/store.c, include/wincrypt.h:
	crypt32: Partially implement CertGetIssuerCertificateFromStore.

	* dlls/crypt32/cert.c:
	crypt32: Implement CRYPT_VERIFY_CERT_SIGN_ISSUER_CERT in CryptVerifyCertificateSignatureEx.

2006-05-09  James Hawkins <truiken@gmail.com>

	* dlls/ntdll/nt.c:
	ntdll: Return STATUS_NOT_IMPLEMENTED for the unimplemented port functions.

2006-05-09  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/brsfolder.c, dlls/shell32/pidl.h:
	shell32: Support BFFM_SETSELECTION[AW] and BFFM_SETEXPANDED for SHBrowseForFolder.

2006-05-09  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/kernel/comm.c:
	kernel: Comm_CheckEvents: Only warn for non-empty transmitter with EV_TXEMPTY flag set.
	Noticed by Dan Armbrust.

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

	* dlls/x11drv/window.c:
	x11drv: We really need to flush the display when destroying a window.

2006-05-07  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: EscapeCommFunction & associated IOCTLs
	- implemented ntdll's serial IOCTL: CLR_DTR, CLR_RTS, SET_DTR,
	SET_RTS, SET_XOFF, SET_XON, RESET_DEVICE
	- implemented kernel32.EscapeCommFunction on top of them

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: SetupComm & SET_QUEUE_SIZE
	- stubbed out ntdll's serial IOCTL SET_QUEUE_SIZE
	- implemented kernel32.SetupComm on top of it

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: [SG]etCommTimeout, SERIAL_[GS]ET_TIMEOUT
	- implemented ntdll's COMM IOCTL GET_TIMEOUTS, SET_TIMEOUTS
	- implemented kernel32.GetCommTimeout and SetCommTimeout on top of them

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: GetCommState & IOCTL_GET_CHARS
	- implemented SERIAL_GET_CHARS ioctl
	- made use of it in kernel32.GetCommState

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: GetCommState & IOCTL_SERIAL_GET_HANDFLOW
	- implemented SERIAL_GET_HANDFLOW ioctl
	- made use of it in kernel.GetCommState

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: GetCommState & SERIAL_GET_LINE_CONTROL
	- implemented SERIAL_GET_LINE_CONTROL ioctl
	- made use of it in kernel.GetCommState

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: GetCommState & IOCTL_GET_BAUD_RATE
	- implemented SERIAL_GET_BAUD_RATE ioctl
	- made use of it in kernel.GetCommState

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: SetCommState & IOCTL_SET_CHARS
	- implemented ntdll's serial IOCTL SET_CHARS
	- used this IOCTL in kernel32.SetCommState

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: SetCommState & IOCTL_SET_HANDFLOW
	- implemented ntdll's serial IOCTL SET_HANDFLOW
	- used this IOCTL in kernel32.SetCommState

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: SetCommState & IOCTL_SET_LINE_CONTROL
	- implemented ntdll's serial IOCTL SET_LINE_CONTROL
	- used this IOCTL in kernel32.SetCommState

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: SetCommState & IOCTL_SET_BAUD_RATE
	- created dump_dcb to print out DCB information
	- implemented ntdll's serial IOCTL SET_BAUD_RATE
	- used this IOCTL in kernel32.SetCommState

2006-05-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: Implement IWineD3DSurface::SetColorKey.

	* dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: Implement IWineD3DSurface::IsLost and Restore.

	* dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h:
	wined3d: rhw vertex fixup.
	Change the rhw=0 range to ]1e-8,1e-8[ and move the value to a constant
	in wined3d_types.h

2006-05-09  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Share get_opcode.

2006-05-09  Robert Reif <reif@earthlink.net>

	* dlls/winmm/tests/wave.c:
	winmm: Print out more info on failed test.
	Print out more info on failed test.  Looks like there is a bug in ALSA
	OSS emulation where it is returning a mid-sample position.

2006-05-09  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/record.c, dlls/dnsapi/tests/record.c:
	dnsapi: The ttl value should be ignored when comparing dns records.

2006-05-09  David Lichterman <laviddichterman@gmail.com>

	* dlls/mciwave/Makefile.in:
	mciwave: Fix make install error.

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

	* dlls/user/defdlg.c, dlls/user/winproc.c, dlls/user/winproc.h:
	user: Added specific winproc functions for calling dialog procedures.

	* dlls/user/winproc.c:
	user: Use handles for 32-bit window procedures instead of pointers into the bss segment.

	* dlls/user/class.c:
	user: Always set the correct class winproc depending on the A/W type.

	* dlls/user/winproc.c:
	user: Remove some redundant NULL pointer checks.

	* dlls/user/msg16.c:
	user: Make sure to always pass a 16-bit pointer to CallWindowProc16.

	* dlls/user/class.c, dlls/user/win.c, dlls/user/winproc.c,
	  dlls/user/winproc.h, dlls/user/wnd16.c:
	user: Separate the 16 and 32-bit versions of WINPROC_AllocProc.

	* dlls/user/class.c, dlls/user/win.c, dlls/user/winproc.c,
	  dlls/user/winproc.h, dlls/user/wnd16.c:
	user: Separate the 16 and 32-bit versions of WINPROC_GetProc.

	* dlls/user/win.c:
	user: Fixed offset check for the DWLP_DLGPROC case in SetWindowLong.

	* dlls/user/win.c:
	user: Separate Get/SetWindowLong16 implementation from the 32-bit one.

	* dlls/kernel/except.c:
	kernel: Added work-around in UnhandledExceptionFilter for no exec protections.

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

	* dlls/ntdll/virtual.c:
	ntdll: Make the section with AddressOfEntryPoint in it executable.

2006-05-07  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/gdi/font.c, dlls/gdi/gdi32.spec:
	gdi32: Add stub for GetCharWidthI and GetFontUnicodeRanges.

	* include/wingdi.h:
	gdi32: Add defines for GLYPHSET and WCRANGE.

2006-05-09  Mike McCormack <mike@codeweavers.com>

	* dlls/x11drv/opengl.c:
	x11drv: Fix a warning when opengl headers are missing.

2006-05-09  Tomas Carnecky <tom@dbservice.com>

	* dlls/opengl32/wgl.c:
	opengl: Properly use glXQueryDrawable() to get the Visual ID.

2006-05-08  Phil Costin <philcostin@hotmail.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Add check for GL Shading Language 100 Extension.

2006-05-08  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Clean up per version shader limits code.

	* dlls/wined3d/Makefile.in, dlls/wined3d/baseshader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Addline cleanup.

2006-05-09  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/Makefile.in, dlls/dnsapi/dnsapi.spec, dlls/dnsapi/query.c:
	dnsapi: Partially implement DnsQueryConfig.

2006-05-09  Saulius Krasuckas <saulius2@ar.fi.lt>

	* tools/wine.inf:
	wine.inf: Install comctl32.dll as fake DLL.

2006-05-08  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/encode.c:
	crypt32: Simplify OID decoding
	Use a more direct function to decode OIDs, instead of the bizarre
	wrapper.

2006-05-08  Robert Reif <reif@earthlink.net>

	* dlls/winmm/tests/wave.c, dlls/winmm/winmm.c:
	winmm: Check waveOutGetVolume parameter.

2006-05-09  Hans Leidekker <hans@it.vu.nl>

	* dlls/sane.ds/rsrc.rc, dlls/sane.ds/sane_Nl.rc:
	sane.ds: Added Dutch resources.

	* dlls/gphoto2.ds/gphoto2_Nl.rc, dlls/gphoto2.ds/rsrc.rc:
	gphoto2.ds: Added Dutch resources.

2006-05-09  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/gphoto2.ds/gphoto2_Fr.rc, dlls/gphoto2.ds/rsrc.rc:
	gphoto2.ds: Added French resources.

2006-05-09  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/twain_32/dsm_ctrl.c:
	twain_32: Add missing HeapFree's on error patch (found by smatch).

2006-05-08  Marcus Meissner <marcus@jet.franken.de>

	* DEVELOPERS-HINTS, documentation/PACKAGING:
	Some documentation changes for twain split.

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

	* configure, configure.ac, dlls/Makefile.in, dlls/msacm32.drv/.gitignore,
	  dlls/msacm32.drv/Makefile.in, dlls/msacm32.drv/msacm32.drv.spec,
	  dlls/msacm32.drv/wavemap.c, dlls/winmm/wavemap/.gitignore,
	  dlls/winmm/wavemap/Makefile.in, dlls/winmm/wavemap/msacm.drv.spec,
	  dlls/winmm/wavemap/wavemap.c, dlls/winmm/winemm.h:
	msacm32.drv: Renamed msacm.drv to msacm32.drv, and moved the directory to the top-level.

	* configure, configure.ac, dlls/Makefile.in, dlls/mciwave/.gitignore,
	  dlls/mciwave/Makefile.in, dlls/mciwave/mciwave.c,
	  dlls/mciwave/mciwave.spec, dlls/winmm/mciwave/.gitignore,
	  dlls/winmm/mciwave/Makefile.in, dlls/winmm/mciwave/mciwave.c,
	  dlls/winmm/mciwave/mciwave.drv.spec, tools/wine.inf:
	mciwave: Renamed mciwave.drv to mciwave.dll, and moved the directory to the top-level.

2006-05-08  Marcus Meissner <marcus@jet.franken.de>

	* configure, configure.ac, dlls/Makefile.in, dlls/gphoto2.ds/.gitignore,
	  dlls/gphoto2.ds/Makefile.in, dlls/gphoto2.ds/capability.c,
	  dlls/gphoto2.ds/ds_ctrl.c, dlls/gphoto2.ds/ds_image.c,
	  dlls/gphoto2.ds/gphoto2.ds.spec, dlls/gphoto2.ds/gphoto2_En.rc,
	  dlls/gphoto2.ds/gphoto2_i.h, dlls/gphoto2.ds/gphoto2_main.c,
	  dlls/gphoto2.ds/resource.h, dlls/gphoto2.ds/rsrc.rc,
	  dlls/gphoto2.ds/ui.c, include/config.h.in:
	gphoto.ds: Implemented a libgphoto2 import driver, based on the sane.ds driver.
	Wrote a GUI import dialog.
	With help from Aric Stewart.

	* configure, configure.ac, dlls/Makefile.in, dlls/sane.ds/.gitignore,
	  dlls/sane.ds/Makefile.in, dlls/sane.ds/capability.c,
	  dlls/sane.ds/ds_ctrl.c, dlls/sane.ds/ds_image.c,
	  dlls/sane.ds/resource.h, dlls/sane.ds/rsrc.rc,
	  dlls/sane.ds/sane.ds.spec, dlls/sane.ds/sane_De.rc,
	  dlls/sane.ds/sane_En.rc, dlls/sane.ds/sane_Fi.rc,
	  dlls/sane.ds/sane_Fr.rc, dlls/sane.ds/sane_Ko.rc,
	  dlls/sane.ds/sane_No.rc, dlls/sane.ds/sane_i.h,
	  dlls/sane.ds/sane_main.c, dlls/sane.ds/ui.c,
	  dlls/twain_32/.gitignore, dlls/twain_32/Makefile.in,
	  dlls/twain_32/capability.c, dlls/twain_32/ds_audio.c,
	  dlls/twain_32/ds_ctrl.c, dlls/twain_32/ds_image.c,
	  dlls/twain_32/dsm_ctrl.c, dlls/twain_32/resource.h,
	  dlls/twain_32/rsrc.rc, dlls/twain_32/twain32_main.c,
	  dlls/twain_32/twain_De.rc, dlls/twain_32/twain_En.rc,
	  dlls/twain_32/twain_Fi.rc, dlls/twain_32/twain_Fr.rc,
	  dlls/twain_32/twain_Ko.rc, dlls/twain_32/twain_No.rc,
	  dlls/twain_32/twain_i.h, dlls/twain_32/ui.c:
	twain_32: Split out the sane specific parts from twain_32 code.
	Autoprobing via DG_CONTROL/DAT_IDENTITY/MSG_GET.

	* dlls/twain_32/twain.h, include/Makefile.in, include/twain.h:
	twain_32: Moved twain.h to the include directory.

2006-05-08  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Preserve the 'auto' features before copying over the masked unmarshaled ones.

2006-05-08  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/antimoniker.c:
	ole32: The type check in AntiMonikerImpl_CommonPrefixWith should be for anti-monikers, not item-monikers.

	* dlls/ole32/classmoniker.c, dlls/ole32/tests/moniker.c:
	ole32: Implement several class moniker functions using the description provided on MSDN.

	* dlls/ole32/compobj_private.h, dlls/ole32/regsvr.c:
	ole32: Remove duplicated CLSIDs.

	* dlls/ole32/Makefile.in, dlls/ole32/classmoniker.c, dlls/ole32/moniker.c,
	  dlls/ole32/moniker.h, dlls/ole32/oleproxy.c,
	  dlls/ole32/tests/moniker.c:
	ole32: Add an implementation of class monikers.

	* dlls/ole32/tests/moniker.c:
	ole32: Add tests for IsRunning, GetTimeOfLastChange, BindToObject, BindToStorage and Inverse.

	* dlls/ole32/compositemoniker.c:
	ole32: Fix regression caused by an earlier patch that removed the
	check for the composite moniker having only one moniker in it. In this
	case, return the one moniker and free the memory associate with the
	composite moniker.

	* dlls/ole32/compositemoniker.c:
	ole32: Fix infinite recursion in CompositeMonikerImpl_GetTimeOfLastChange by handling pmkToLeft properly.
	Fix a typo where CompositeMonikerImpl_GetTimeOfLastChange was called
	instead of the virtual implementation of it on mostRightMk.

	* dlls/ole32/compositemoniker.c:
	ole32: Fix infinite recursion in CompositeMonikerImpl_BindToStorage.

2006-05-08  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/dnsapi.spec, dlls/dnsapi/record.c,
	  dlls/dnsapi/tests/record.c:
	dnsapi: Implement and test DnsRecordSetCompare.

2006-05-06  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/dinput8/Makefile.in, dlls/dinput8/dinput8_main.c:
	dinput8: DllGetClassObject support.

2006-05-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement IWineD3DSurface::GetDC and IWineD3DSurface::ReleaseDC.

2006-05-01  Tomas Carnecky <tom@dbservice.com>

	* dlls/x11drv/init.c:
	x11drv: Return correct PBuffer drawable.

2006-04-25  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Don't duplicate handle in _get_osfhandle.

2006-04-23  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Don't append '\r' to the last paragraph in EM_GETTEXTEX.

2006-05-07  Andrew Ziem <ahziem1@mailbolt.com>

	* dlls/setupapi/tests/stringtable.c:
	setupapi: Improve unit tests for case sensitivity in string tables.

2006-05-01  Mike Hearn <mike@plan99.net>

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Add StgCreateFile test and conformance fix.

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

	* dlls/ole32/compositemoniker.c:
	ole32: Properly initialize hash value in CompositeMonikerImpl_Hash.

2006-05-08  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compositemoniker.c:
	ole32: Fix typos in CompositeMonikerImpl_BindToObject and CompositeMonikerImpl_BindToStorage.

	* dlls/ole32/compositemoniker.c:
	ole32: Create moniker enumerator with an initial reference count.

	* dlls/ole32/tests/moniker.c:
	ole32: Test moniker display names.

	* dlls/ole32/tests/moniker.c:
	ole32: Add a test for IMoniker_IsDirty.

	* dlls/ole32/tests/moniker.c:
	ole32: Test unmarshaling the moniker instead of just releasing the marshaled data.

	* dlls/ole32/compositemoniker.c, dlls/ole32/tests/moniker.c:
	ole32: Make the size returned by CompositeMonikerImpl_GetMarshalSizeMax match that returned by native.

	* dlls/ole32/marshal.c:
	ole32: Add on the size of the whole OBJREF structure in the case of custom marshaling.

	* dlls/ole32/compositemoniker.c, dlls/ole32/tests/moniker.c:
	ole32: Fix the algorithm used in CompositeMonikerImpl_Hash to match native.

	* dlls/ole32/itemmoniker.c, dlls/ole32/tests/moniker.c:
	ole32: Fix the algorithm used in ItemMonikerImpl_Hash to match native.

	* dlls/ole32/tests/moniker.c:
	ole32: Add tests for generic composite monikers.

	* dlls/ole32/compositemoniker.c, dlls/ole32/moniker.h,
	  dlls/ole32/oleproxy.c:
	ole32: Add a class factory for composite monikers.

	* dlls/ole32/compositemoniker.c:
	ole32: Allocate memory for the generic composite moniker in CompositeMonikerImpl_Construct.
	Don't leak memory in the case of newCompositeMoniker->tabLastIndex == 1,
	which can't happen anyway.
	Allow construction of a moniker with no sub-monikers.

	* dlls/ole32/compositemoniker.c:
	ole32: Implement IMarshal for composite monikers.

	* dlls/ole32/compositemoniker.c:
	ole32: Release all existing monikers before loading the state.

	* dlls/ole32/compositemoniker.c:
	ole32: EnumMonikerImpl_Next should add a reference to the monikers it returns to the caller.

	* dlls/ole32/compositemoniker.c:
	ole32: Fix CompositeMonikerImpl_GetSizeMax to match the data written by CompositeMonikerImpl_Save.

	* dlls/ole32/compositemoniker.c:
	ole32: Fix the loop in CompositeMonikerImpl_Hash, as IEnumMoniker_Next
	will return S_FALSE when there are no more monikers left to enumerate.

	* dlls/ole32/compositemoniker.c:
	ole32: Implement CompositeMonikerROTDataImpl_GetComparisonData.

	* dlls/ole32/compositemoniker.c:
	ole32: The unknown constant at the start of the persisted data is the number of monikers in the generic composite.
	Fix the pointer passed into IEnumMoniker_Release in CompositeMonikerImpl_Save.

	* dlls/ole32/antimoniker.c, dlls/ole32/tests/moniker.c:
	ole32: Add a test for anti monikers. Fix AntiMonikerImpl_Hash and AntiMonikerROTDataImpl_GetComparisonData to pass the tests.

	* dlls/ole32/antimoniker.c, dlls/ole32/moniker.h, dlls/ole32/oleproxy.c:
	ole32: Support marshaling of anti monikers.

	* dlls/ole32/regsvr.c:
	ole32: Register CLSID_CompositeMoniker.

	* dlls/ole32/regsvr.c:
	ole32: Register CLSIDs for all OLE monikers.

	* dlls/ole32/tests/moniker.c:
	ole32: Add tests for item moniker.

	* dlls/ole32/tests/moniker.c:
	ole32: Make class moniker test more generic and test more properties.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Automatically resolve the endpoint.

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

	* dlls/wined3d/pixelshader.c:
	wined3d: Fix possible buffer overflow.
	Increase size of passed buffer to print into.

2006-04-30  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Add ScriptTextOut functionality and restructure tests.

2006-04-28  Jason Green <jave27@gmail.com>

	* dlls/wined3d/vertexshader.c:
	wined3d: Eliminate duplicate function: vshader_program_dump_param().

2006-04-28  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Share get_register_code().

2006-04-26  Thomas Kho <tkho@ucla.edu>

	* dlls/user/menu.c, dlls/user/tests/menu.c:
	user: Fix behavior when selecting disabled menu items.

	* dlls/user/defwnd.c, dlls/user/tests/menu.c:
	user: Allow menu WndProc to recognize VK_[LR]MENU.

2006-04-28  Thomas Kho <tkho@ucla.edu>

	* dlls/user/tests/menu.c:
	user: Extend menu conformance test.

2006-05-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, include/wine/wined3d_interface.h:
	wined3d: Add IWineD3DSurface::GetPitch.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Add IWineD3DDevice::DrawPrimitiveStrided.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add some surface flags.

2006-05-07  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Implement GetVarDesc_Proxy and friends.

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Change CLEANLOCALSTORAGE flag constants to their character
	constant equivalents.  It's now obvious why these were chosen.  Should
	be a NOP.

2006-05-08  James Hawkins <truiken@gmail.com>

	* include/winnt.h:
	include: Add missing SECURITY_QUALITY_OF_SERVICE defines.

2006-05-08  Hwang YunSong <hys545@dreamwiz.com>

	* dlls/user/resources/user32_Ko.rc:
	user32: Updated Korean resource.

2006-05-07  Robert Reif <reif@earthlink.net>

	* programs/winecfg/audio.c:
	winecfg: Fix audio crash when no drivers are available.

	* dlls/winmm/wineoss/audio.c:
	wineoss: Missing mixer fixes.
	Don't list volume in capabilities when mixer is missing.

	* dlls/winmm/tests/Makefile.in, dlls/winmm/tests/wave.c:
	winmm: More wave callback tests.
	Add tests for CALLBACK_FUNCTION and CALLBACK_THREAD.  The only
	callback type not tested now is CALLBACK_WINDOW.

2006-05-08  Saulius Krasuckas <saulius2@ar.fi.lt>

	* dlls/comctl32/comctl32.h:
	comctl32: Increase FILEVERSION up to 5.81.4704.1100.

2006-05-06  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shlview.c:
	shell32: Don't use uninitialized item.mask in shlview.

2006-05-07  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/source.c:
	dbghelp: Stub for SymGetSourceFileToken.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c,
	  dlls/dbghelp/source.c, dlls/dbghelp/symbol.c, dlls/dbghelp/type.c:
	dbghelp: Base and symbols.
	- report the correct image base for a symbol which is
	seen as being in a builtin PE module, whilst its debug
	information is gotten from an ELF module
	- module_get_debug now returns a pair of modules
	(the requested that has to be presented back to the client
	and the effective one, which contains the debug info)
	- reworked SymFromName in order to provide also the revelant
	module base address

2006-05-06  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/dinput/dinput_main.c:
	dinput: Fix Initialize return value.

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

	* dlls/user/tests/wsprintf.c:
	user32: Added tests for CharUpper and CharLower.

	* dlls/ole32/compobj.c:
	ole32: Fixed typo in debug statement.

2006-05-06  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/gdi/font.c:
	gdi: A-to-W conversion should be font-independent.

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

	* dlls/comctl32/propsheet.c:
	comctl32: Make some internal functions and variables static, remove
	some unneeded prototypes.

	* dlls/comctl32/propsheet.c:
	comctl32: Add support for PSP_USEHEADERTITLE, PSP_USEHEADERSUBTITLE
	and PSP_HIDEHEADER in CreatePropertySheetPageA/W, handle resource ids.

	* dlls/comctl32/propsheet.c:
	comctl32: psInfo->proppage[index].pszText is always initialized to a
	proper value regardless of PSP_USETITLE, use it unconditionally.

2006-05-04  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c:
	advpack: DelDirs should only remove a directory if it's empty.

	* dlls/advpack/install.c:
	advpack: The only flag we don't handle is RSC_FLAG_UPDHLPDLLS.

2006-05-01  Mike Hearn <mike@plan99.net>

	* dlls/ntdll/sec.c:
	ntdll: Fix heap corruption in RtlDeleteAce.

2006-04-26  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Separate pshader/vshader tables.

2006-05-02  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool/tests: Fix failures in test_DEVMODE.

2006-05-05  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Fix VARIANT_UserFree.

	* dlls/oleaut32/tests/vartest.c, dlls/oleaut32/variant.c:
	oleaut32: Remove weird attempt to clear VT_VARIANT.
	Add some tests.

	* dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Rewrite VARIANT user marshaling.

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

	* dlls/dnsapi/dnsapi.spec, dlls/dnsapi/name.c:
	dnsapi: Implement DnsValidateName_{A,UTF8,W}.

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

	* dlls/dnsapi/dnsapi.h, dlls/dnsapi/dnsapi.spec, dlls/dnsapi/record.c:
	dnsapi: Implement DnsRecord{CopyEx,ListFree,SetCopyEx}.

	* dlls/dnsapi/tests/.gitignore, dlls/dnsapi/tests/Makefile.in,
	  dlls/dnsapi/tests/record.c:
	dnsapi: Add tests for DnsRecordCompare.

	* dlls/dnsapi/Makefile.in, dlls/dnsapi/dnsapi.spec, dlls/dnsapi/record.c:
	dnsapi: Implement DnsRecordCompare.

2006-05-01  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Use getaddrinfo to get the sockaddr.
	Use getaddrinfo to get the sockaddr to use for connecting to a remote
	server as Connection->NetworkAddr may be a hostname as well. Use a
	loop to support both IP and IPv6.

	* dlls/ole32/compobj.c:
	ole32: Remove the fixme printed if CoGetClassObject fails in CoCreateInstance.
	Remove the fixme printed if CoGetClassObject fails in
	CoCreateInstance, because we already print an error in all cases and
	the error more accurately pin-points the source of the problem.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NdrConformantVaryingArrayFree.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Dereference the pointer if necessary only after doing the
	pointer checks and writing the pointer ID to the wire.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Add a stub for RpcBindingSetOption.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Improve the traces in the pointer functions.

2006-04-28  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/mlang/mlang.c:
	mlang: Partially implemented ConvertStringEx.

2006-04-25  Juris Smotrovs <juris.smotrovs@sets.lv>

	* dlls/user/tests/msg.c:
	user: Test cases demonstrating position changes for MDI children.

2006-04-25  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/comctl32/treeview.c:
	comctl32: Update first visible when appropiate in the TVI_SORT case.

2006-04-24  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/drawprim.c:
	wined3d: Remove dead shader code.

2006-04-26  Robert Shearman <rob@codeweavers.com>

	* dlls/setupapi/parser.c:
	setupapi: Fix parsing of UCS-16 files.
	Fix parsing of UCS-16 files prefixed with the Unicode BOM. Based on a
	patch by Hervé Poussineau.

2006-05-03  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/stg_stream.c:
	ole32: IPersistStream is also implemented by any object that implements IStream.

	* dlls/ole32/storage32.c:
	ole32: Fix typos in StgCreateStorageEx and StgOpenStorageEx.

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: STGM_PRIORITY allows other IStorage objects to be opened in transacted mode with read/write access.

	* dlls/oleaut32/typelib.c:
	oleaut32: Check the return value from VariantCopy when copying values
	for VT_VARIANT typed parameters for ITypeInfo::Invoke.

	* dlls/oleaut32/typelib.c:
	oleaut32: Support values being passed into VT_VARIANT|VT_BYREF typed parameters in ITypeInfo::Invoke.

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Check that the storage was opened with write access before creating a new stream or sub-storage.

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Copy the mode flags into the STATSTG structure in IStorage::Stat.
	Copy the mode flags into the STATSTG structure in IStorage::Stat. Don't
	store the STGM_CREATE flag in openFlags, since it is only relevant when
	opening the stream and the tests show that it isn't returned in the
	STATSTG structure.

	* dlls/ole32/tests/storage32.c:
	ole32: Add tests for IStorage::Stat.

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Fix access right check for opening and creating streams and storages.
	Check the access mode for opening and creating streams and storages
	doesn't exceed the access rights the current storage was opened with,
	not the parent storage.

	* dlls/ole32/stg_stream.c:
	ole32: Add more tracing for reading and writing storage streams.
	Add more tracing for read and write operations and warn in the case of
	failure.

	* dlls/ole32/tests/storage32.c:
	ole32: Add tests for sub-storages and creating streams.
	Replace a test that fails on NT and with DCOM95 DLLs with a test that
	ensures access permissions are checked correctly for sub-storages and
	creating streams.

	* dlls/ole32/tests/storage32.c:
	ole32: Add a storage test for reading and writing of streams that have
	had their parent storage released.

	* dlls/ntdll/nt.c:
	ntdll: Fix size check for NtQueryInformationToken(TokenGroups).
	For NtQueryInformationToken(TokenGroups), don't do a size check before
	the server call, as we don't know how many SIDs there are to return
	and hence the needed buffer size.

2006-05-03  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Alignment fixes for safearrays.

	* dlls/oleaut32/tests/usrmarshal.c:
	oleaut32: Fix tests under win2k.

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

	* dlls/oleaut32/tests/usrmarshal.c:
	oleaut32: Split out the SAFEARRAY and BSTR tests so that they can be used in the upcoming VARIANT tests.

2006-04-29  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Fix BSTR marshaling to be wire compatible with Windows.

2006-05-03  Andrew Ziem <ahziem1@mailbolt.com>

	* dlls/setupapi/tests/stringtable.c:
	setupapi: Add case sensitivity string table tests.

2006-05-02  Troy Rollo <wine@troy.rollo.name>

	* dlls/gdi/font.c:
	gdi: Fix GetTextExentExPointW to return values consistent with GetTextExtentPointW.

2006-05-02  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool/tests: Fix test for GetPrinterDriver.

2006-05-01  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/kernel/sync.c, dlls/ntdll/debugbuffer.c, dlls/ntdll/reg.c,
	  dlls/ntdll/thread.c:
	Don't check pointers for NULL before RtlFreeHeap. It is redundant.

	* dlls/secur32/secur32.c:
	secur32: Missing LeaveCriticalSection on error paths.

2006-04-30  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c:
	advpack: Don't fail if the dll to register doesn't exist.

2006-04-30  Mike McCormack <mike@codeweavers.com>

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Add a stub implementation for IUnknown_ProfferService.

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Add a stub implementation for IUnknown_QueryServiceExec.

	* dlls/ole32/stg_stream.c:
	ole32: Return STG_E_REVERTED when a stream's parent storage has been closed.

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

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Added some comments.

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

	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser::[get|put]_ToolBar implementation.

	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser::[get|put]_StatusBar implementation.

	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser::[get|put]_AddressBar implementation.

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

	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser::[get|put]_MenuBar implementation.

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Added get_HWND implementation.

	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Added [get|put]_Visible implementation.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Fix GetMiscStatus implementation.

2006-04-25  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/basetexture.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/indexbuffer.c,
	  dlls/wined3d/palette.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/query.c, dlls/wined3d/resource.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/texture.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c:
	wined3d: QueryInterface corrections.

2006-04-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/secur32/ntlm.c:
	secur32: Add partial support for ISC_REQ_ALLOCATE_MEMORY in the NTLM security provider.

	* dlls/secur32/ntlm.c, dlls/secur32/secur32.c,
	  dlls/secur32/secur32_priv.h, dlls/secur32/tests/main.c:
	secur32: Fix some wrong assumptions in the NTLM test case, make it pass in XP SP2 and Wine.

	* configure, configure.ac, dlls/Makefile.in, dlls/mprapi/.gitignore,
	  dlls/mprapi/Makefile.in, dlls/mprapi/mprapi.c,
	  dlls/mprapi/mprapi.spec, include/Makefile.in, include/mprapi.h:
	Add a stub implementation of mprapi.dll.

2006-04-27  Bill Medland <billmedland@mercuryspeed.com>

	* libs/wpp/ppl.l, libs/wpp/wpp_private.h:
	wpp: Support long long constants if configure says long long is available

2006-04-27  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/user/tests/input.c:
	user: tests: Change INPUT to TEST_INPUT, fix union usage.

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

	* dlls/wined3d/vertexshader.c:
	wined3d: Vertex Shader regtype cleanups.

2006-04-22  Dan Kegel <dank@kegel.com>

	* dlls/msi/source.c:
	msi: Fix missing case in MsiSourceListAddSourceEx.

2006-04-28  James Hawkins <truiken@gmail.com>

	* dlls/ole32/storage32.c:
	ole32: StorageImpl_GetROBigBlock can return NULL so check for NULL before doing a memcpy.

	* dlls/advpack/install.c:
	advpack: Implement the DelDirs command.

	* dlls/advpack/install.c:
	advpack: Implement the CheckAdminRights option.

	* dlls/advpack/install.c:
	advpack: Implement the RunPreSetupCommands command.

	* dlls/advpack/install.c:
	advpack: INF install is implemented so fix the documentation.

	* dlls/advpack/install.c:
	advpack: Implement the PerUserInstall command.

	* dlls/advpack/install.c:
	advpack: Leave room for the NULL terminator in the working_dir string.

	* dlls/advpack/install.c:
	advpack: NULL-terminate the source path.

	* dlls/advpack/install.c:
	advpack: Return the hresult in ExecuteCabW.

	* dlls/advpack/reg.c:
	advpack: Clean up the formatting of RegInstall to match the rest of the file.

	* dlls/advpack/reg.c:
	advpack: Perform an Advanced INF-level install in RegInstall.

	* dlls/advpack/reg.c:
	advpack: Factor out writing predefined strings into write_predefined_strings.

	* dlls/advpack/advpack.c:
	advpack: Ignore the return value from the OCX registration.

2006-04-21  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/search.c:
	wldap32: Document the search functions.

2006-04-21  Jacek Caban <jacek@codeweavers.com>

	* dlls/kernel/kernel_main.c:
	kernel: Remove no longer needed includes.

2006-04-21  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/.gitignore, dlls/advapi32/tests/Makefile.in,
	  dlls/advapi32/tests/lsa.c:
	advapi32: Add some lsa tests.

	* dlls/advapi32/lsa.c:
	advapi32: Fix LsaClose return value.

2006-04-29  Robert Reif <reif@earthlink.net>

	* dlls/netapi32/access.c:
	netapi32: Implement NetUserModalsGet level 2.

	* dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c:
	dsound: Add DirectSoundBuffer_Lock tests.

2006-04-28  Robert Reif <reif@earthlink.net>

	* dlls/dsound/buffer.c, dlls/dsound/primary.c:
	dsound: Check DirectSoundBuffer_Lock parameters.
	Check DirectSoundBuffer_Lock parameters and return an error (like
	Windows) rather than fixing up the parameters.

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

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added test of connection points.

	* dlls/mshtml/conpoint.c:
	mshtml: Added GetConnectionInterface implementation.

	* dlls/mshtml/conpoint.c:
	mshtml: Added GetConnectionPointContainer implementation.

	* dlls/mshtml/conpoint.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added stub implementation of connection points.

	* dlls/mshtml/Makefile.in, dlls/mshtml/conpoint.c, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Added IConnectionPointContainer stub implementation.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/nsiface.idl:
	mshtml: Added get_body implementation.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlbody.c,
	  dlls/mshtml/htmltextcont.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added IHTMLTextContainer stub implementation.

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

2006-04-28  Fatih Asici <fasici@linux-sevenler.org>

	* fonts/ms_sans_serif.sfd:
	fonts: Add missing Latin glyph to ms_sans_serif.

	* fonts/system.sfd:
	fonts: Add some missing Latin glyphs to System.

	* fonts/courier.sfd:
	fonts: Add some missing Latin glyphs to Courier.

2006-04-28  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Implement GetDocumentation_Proxy/Stub.

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Implement GetFuncDesc_Proxy and friends.

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Implement GetTypeAttr_Proxy and friends.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Support for non-encapsulated unions.

	* dlls/gdi/freetype.c:
	gdi32: FcPatternGet( FC_FILE ) only returns the basename as of fontconfig 2.3.92 .
	FcPatternGetString( FC_FILE ) returns the whole path.  Go figure.

2006-04-22  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/client.c, tools/widl/header.c, tools/widl/server.c,
	  tools/widl/widl.c, tools/widl/widl.h, tools/widl/widl.man.in:
	widl: Implement 'oldnames' option.

	* tools/widl/typegen.c:
	widl: Fix a typo.

2006-04-26  Robert Shearman <rob@codeweavers.com>

	* server/thread.c:
	server: Threads should start off without having an impersonation token.

	* dlls/advapi32/security.c:
	advapi32: Implement the majority of ImpersonateLoggedOnUser.

	* dlls/wininet/internet.c:
	wininet: Initialise the LPWITHREADERROR structure after it has been allocated.

	* include/ndrtypes.h:
	include: Copy some format character types from wine/rpcfc.h to
	ndrtypes.h and change them into an enumeration.

2006-04-28  Mike McCormack <mike@codeweavers.com>

	* include/rpcdce.h:
	rpcrt4: Add some defines.

2006-04-26  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpcrt4.spec, include/rpcdce.h:
	rpcrt4: Add stub implementations for RPC authentication functions.

	* dlls/wininet/internet.h, dlls/wininet/netconnection.c:
	wininet: Fix peeking of http data with a nul byte in it.

	* dlls/msi/package.c:
	msi: Use the source name of the msi package when it fails to copy.

	* programs/msiexec/msiexec.c:
	msiexec: Force using /i file.msi, some programs pass properties without an =.

2006-04-25  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/ole2.c:
	ole32: Store drop targets in a standard list.

2006-04-22  Robert Reif <reif@earthlink.net>

	* dlls/netapi32/tests/access.c:
	netapi32: Add minimal NetUserModalsGet test.

2006-04-22  András Kovács <andras@csevego.net>

	* programs/regedit/Hu.rc, programs/regedit/rsrc.rc:
	regedit: Translation to Hungarian.

	* programs/wordpad/Hu.rc, programs/wordpad/rsrc.rc:
	wordpad: Translation to Hungarian.

	* documentation/README.hu:
	Translated README file to Hungarian.

2006-04-21  Jacek Caban <jacek@codeweavers.com>

	* tools/widl/parser.y:
	widl: Fix a typo.

	* include/exdisp.idl, include/mshtml.idl:
	include: Added missing importlib.

2006-04-21  Alexandre Julliard <julliard@winehq.org>

	* server/mapping.c:
	server: Ignore the SizeOfHeaders field and compute the correct size ourselves.

2006-04-21  Jacek Caban <jacek@codeweavers.com>

	* tools/widl/parser.y, tools/widl/typelib.c, tools/widl/typelib.h:
	widl: Added importlib parsing code.

	* dlls/shdocvw/iexplore.c:
	shdocvw: Don't create IE default window in embedding mode.

	* dlls/shdocvw/iexplore.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Use InternetExplorer object in create_ie_window.

2006-04-21  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Invalid sockets should have a value of -1.

2006-04-21  Alexandre Julliard <julliard@winehq.org>

	* libs/wpp/ppy.y:
	wpp: Fixed typo in long long constants handling.

2006-04-20  Bill Medland <billmedland@mercuryspeed.com>

	* libs/wpp/ppl.l:
	wpp: Implement long long constant parsing.

2006-04-19  Hans Leidekker <hans@it.vu.nl>

	* include/windns.h:
	dnsapi: Add a couple of macros and prototypes.

2006-04-21  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/device.c:
	wined3d: Fix mipmap level count.

	* dlls/wined3d/pixelshader.c:
	wined3d: Improve/implement D3DSIO_TEX.
	- unify per-version cases into a single sequence
	- make use of get_register_name() for the destination register
	- ignore destination write mask - it's only allowed on 2.0+ shaders,
	and only the default mask is allowed there (xyzw)
	- enable swizzle on texld 1.4 (it works together with dw/dz modifiers)
	- implement for shaders 2.0-3.0

	* dlls/wined3d/utils.c:
	wined3d: Texture format corrections.
	- add missing GL type and make GL cfg entries for A16B16G16R16
	- correct L16 type to UNSIGNED_SHORT (..16 = short, not byte)
	- change internal format for X8R8G8B8 from GL_RGB to GL_RGB8 which
	seems more correct

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c:
	wined3d: Correct vtrace usage.

2006-04-21  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Add support for the ncacn_ip_tcp transport layer.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Add a stub transport layer for ncacn_ip_tcp.

	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Hide the details of the rpc transport mechanism.

	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Abstract RPCRT4_SpawnConnection.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Move the connected check inside the named pipe code.

	* dlls/rpcrt4/Makefile.in, dlls/rpcrt4/rpc_binding.c,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Split the transport layer into a different file.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Allocate RpcServerProtseq in a single place.

2006-04-21  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Fix return codes of ScriptGetFontProperties + tests.

2006-04-20  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/lsa.c:
	advapi32: Fix LsaQueryInformationPolicy return values.

2006-04-21  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/palette.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement IWineD3DPalette.

2006-04-20  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/typegen.c:
	widl: Implement support for unique pointers to strings.

2006-04-20  Bill Medland <billmedland@mercuryspeed.com>

	* include/poppack.h, include/pshpack1.h, include/pshpack2.h,
	  include/pshpack4.h, include/pshpack8.h:
	include: Expand pack nesting from 3 to 15 levels.

2006-04-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi/freetype.c:
	gdi: Added WineEngGetCharABCWidthsI stub for the non-freetype case.

2006-04-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/kernel_main.c:
	kernel: Make GetTickCount call NtGetTickCount.

2006-04-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/ntdll/ntdll.spec, dlls/ntdll/time.c:
	ntdll: Added NtGetTickCount implementation.

2006-04-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/class.c:
	user: Don't return CLASS_OTHER_PROCESS when modifying a class.
	Based on a patch by qingdoa daoo.

2006-04-20  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_server.c:
	rpcrt4: Abstract the transport layer functionality.

2006-04-20  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c:
	advpack: Implement LaunchINFSectionW.

	* dlls/advpack/install.c:
	advpack: Implement ExecuteCabW.

	* dlls/advpack/install.c:
	advpack: Implement the RunPostSetupCommands callback.

	* dlls/advpack/advpack_private.h, dlls/advpack/install.c:
	advpack: Implement the RegisterOCXs callback.

2006-04-20  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/usp10.c:
	usp10: Set defaults for ScriptGetFontProperties.
	Set defaults similar to Win XP for Kashida and set the default char in
	ScriptGetFontProperties.

	* dlls/usp10/usp10.c:
	usp10: Remove the need to pass chars to ScriptPlace.

2006-04-20  Alexandre Julliard <julliard@winehq.org>

	* server/context_i386.c:
	server: Remove some no longer needed ptrace code to set registers.
	Also make sure the debug registers are properly copied to the context
	when set.

	* dlls/ntdll/exception.c:
	ntdll: Use NtSetContextThread in NtRaiseException.

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/signal_i386.c,
	  dlls/ntdll/signal_powerpc.c, dlls/ntdll/signal_sparc.c,
	  dlls/ntdll/signal_x86_64.c, dlls/ntdll/thread.c,
	  server/context_i386.c:
	ntdll: Get registers on the client side for NtGetContextThread on the current thread.

2006-04-19  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Trace corrections/improvements.

2006-04-19  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/comctl32/toolbar.c:
	comctl32: Fix an unsigned comparison to zero.

2006-04-20  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/advpack_private.h,
	  dlls/advpack/install.c:
	advpack: Set the ldids of the install section in install_init.

	* dlls/advpack/install.c:
	advpack: Add stub handling for the RegisterOCXs command.

	* dlls/advpack/install.c:
	advpack: Don't TRACE the internals of the setup pointer as it can be NULL.

	* dlls/advpack/install.c:
	advpack: LaunchINFSectionExA is no longer a stub.

2006-04-20  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Use a separate function to open each protseq.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Abstract access to the connection's waitable object.

2006-04-20  Robert Shearman <rob@codeweavers.com>

	* tools/widl/write_msft.c:
	widl: Prevent NULL pointer de-refs on "void *" types.

	* dlls/wininet/internet.c:
	wininet: Don't allocate memory for the thread error structure until it is needed.
	Don't allocate memory for the thread error structure until it is
	needed, as it is quite large and wastes memory for threads that don't
	call any wininet function.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Don't apply the offset to the pointer passed to callback conformance functions.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Free all pointers by default, except for conformant strings.
	Free all pointers by default, except for conformant strings.
	Conformant arrays should always be freed.
	Add FC_CVARRAY to list of known types to avoid a FIXME.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_server.c:
	rpcrt4: Fix some memory leaks.

	* dlls/rpcrt4/ndr_stubless.c, include/ndrtypes.h, include/wine/rpcfc.h:
	rpcrt4: Use the documented NDR_PROC_HEADER_EXTS structure.
	Use the documented NDR_PROC_HEADER_EXTS structure instead of the
	current NDR_PROC_EXTENSIONS structure currently in ndr_stubless.c.

	* dlls/rpcrt4/ndr_stubless.c, include/ndrtypes.h, include/wine/rpcfc.h:
	rpcrt4: Use INTERPRETER_OPT_FLAGS in ndrtypes.h instead of flags on an unsigned char.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Store the return value on the stack for interpreted stubs.
	Store the return value on the stack for stubs, as MIDL reserves space
	for it and gives us a stack offset. This fixes calling methods with
	thunks that assume that the return value will be stored on the stack.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Correctly fill in StackTop for stubless clients/servers.
	Correctly fill in StackTop for stubless clients/servers so that
	conformance for top-level parameters works.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: There's no need to set stubMsg.StackTop twice.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Fix the MSVC version of call_server_func.
	Fix the MSVC version of call_server_func to pop the registers in the
	same order they were pushed.

2006-04-19  Thomas Kho <tkho@ucla.edu>

	* dlls/x11drv/keyboard.c:
	x11drv: Virtual key input scrubbing in X11DRV_send_keyboard_input.

2006-04-19  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/progman/Cs.rc, programs/progman/De.rc, programs/progman/En.rc,
	  programs/progman/Es.rc, programs/progman/Fr.rc,
	  programs/progman/Hu.rc, programs/progman/It.rc,
	  programs/progman/Ko.rc, programs/progman/Nl.rc,
	  programs/progman/No.rc, programs/progman/Pt.rc,
	  programs/progman/Ru.rc, programs/progman/Si.rc,
	  programs/progman/Tr.rc, programs/progman/Xx.rc,
	  programs/progman/Zh.rc:
	progman: Add close button and sysmenu to dialogs.

	* dlls/comctl32/header.c:
	comctl32: header: Avoid freeing invalid pointers.

2006-04-19  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/resources/user32_Bg.rc, dlls/user/resources/user32_Ca.rc,
	  dlls/user/resources/user32_Cs.rc, dlls/user/resources/user32_Da.rc,
	  dlls/user/resources/user32_De.rc, dlls/user/resources/user32_En.rc,
	  dlls/user/resources/user32_Eo.rc, dlls/user/resources/user32_Es.rc,
	  dlls/user/resources/user32_Fi.rc, dlls/user/resources/user32_Fr.rc,
	  dlls/user/resources/user32_Hu.rc, dlls/user/resources/user32_It.rc,
	  dlls/user/resources/user32_Ja.rc, dlls/user/resources/user32_Ko.rc,
	  dlls/user/resources/user32_Nl.rc, dlls/user/resources/user32_No.rc,
	  dlls/user/resources/user32_Pl.rc, dlls/user/resources/user32_Pt.rc,
	  dlls/user/resources/user32_Ru.rc, dlls/user/resources/user32_Si.rc,
	  dlls/user/resources/user32_Sk.rc, dlls/user/resources/user32_Sv.rc,
	  dlls/user/resources/user32_Tr.rc, dlls/user/resources/user32_Uk.rc,
	  dlls/user/resources/user32_Wa.rc, dlls/user/resources/user32_Zh.rc:
	user: Add SS_NOPREFIX to the text style in message boxes.

2006-04-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/ie.c:
	shdocvw: Added InternetExplorer::Navigate2 implementation.

	* dlls/shdocvw/navigate.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Move create_doc_view_hwnd call to navigate_url.

	* dlls/shdocvw/factory.c, dlls/shdocvw/iexplore.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Register InternetExplorer class factory in IEWinMain.
	Based on a patch by Mike McCormack.

	* dlls/shdocvw/ie.c:
	shdocvw: Added InternetExplorer::put_Visible implementation.

	* dlls/shdocvw/iexplore.c, dlls/shdocvw/shdocvw_main.c:
	shdocvw: Move IEWinMain to iexplore.c.

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/ie.c, dlls/shdocvw/iexplore.c,
	  dlls/shdocvw/shdocvw.h:
	shdocvw: Added beginning InternetExplorer implementation.

	* dlls/shdocvw/factory.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/shdocvw_main.c:
	shdocvw: Move DllGetClassObject implementation to factory.c.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Move more initialization code to DocHost_Init.

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml.idl: Added HTMLDocumentEvents and HTMLDocumentEvents2 dispifaces.

2006-04-19  Jeff Latimer <lats@yless4u.com.au>

	* dlls/gdi/font.c, dlls/gdi/freetype.c, dlls/gdi/gdi32.spec,
	  dlls/gdi/gdi_private.h, include/wingdi.h:
	gdi: Added implementation of GetCharABCWidthsI.

2006-04-19  Alexandre Julliard <julliard@winehq.org>

	* server/context_alpha.c, server/context_i386.c, server/context_powerpc.c,
	  server/context_sparc.c, server/context_x86_64.c, server/debugger.c,
	  server/process.c, server/process.h, server/thread.c, server/thread.h:
	server: Use the standard suspend mechanism to simulate a breakpoint
	in an active process, instead of sending a SIGTRAP.

	* loader/glibc.c:
	loader: Attempt to detect broken vmsplit setups.

2006-04-18  Mike Frysinger <vapier@gentoo.org>

	* dlls/dinput/joystick_linux.c, dlls/winmm/joystick/joystick.c:
	joystick: Search for /dev/input/js as well as /dev/js.

2006-04-19  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c:
	wined3d: Support for shift modifiers.

	* dlls/wined3d/pixelshader.c:
	wined3d: Support more than 4/6 tex/temp registers.

2006-04-19  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/header.c:
	comctl32: Test the HDM_SETITEM notifications.

	* dlls/comctl32/header.c:
	comctl32: header: Send correct notify after HDM_SETITEM.
	The HDN_ITEMCHANGING notify should have the new data instead of the
	old one.  Both HDN_ITEMCHANGING and HDN_ITEMCHANGED now have the text
	field if it changed.

	* dlls/comctl32/comctl32.h, dlls/comctl32/comctl32undoc.c:
	comctl32: Add Str_SetPtrWtoA analogue to Str_SetPtrAtoW.

2006-04-19  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Implement CLEANLOCALSTORAGE marshalling and fix GetLibAttr to use it.
	Based on some documentation by Rob Shearman.

2006-04-20  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_message.c:
	rpcrt4: Use rpcrt4_conn_read in RPCRT4_OpenBinding.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Make RPCRT4_Send more compatible with write(2).

2006-04-19  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Make RPCRT4_Receive more compatible with read(2).

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Simplify RPCRT4_OpenConnection() a little.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Split code to open a pipe from RPCRT4_OpenConnection.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Isolate code to open named pipes out of RPCRT4_OpenConnection.

2006-04-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/dbghelp/dbghelp.c:
	dbghelp: Don't fail to initialize if we can't load the main module as ELF.

	* dlls/shell32/shell32.spec:
	shell32: Fixed ordinals of SHDefExtractIconA/W.

2006-04-18  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/menu.c, dlls/user/tests/menu.c:
	user: Find popup menus by ID.
	- Find menus by ID: Proper fallback to popup menus.
	- Use the menu ID, not the handle for the fallback.
	- Save the fallback menu's position.

2006-04-18  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: Implement GetHWND and SetHWND.

	* dlls/wined3d/device.c:
	wined3d: Implement EnumTextureFormats.

	* dlls/wined3d/device.c:
	wined3d: Implement EnumZBufferFormats.

	* dlls/wined3d/device.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement IWineD3DDevice::EnumDisplayModes.

	* dlls/d3d8/device.c, dlls/d3d8/directx.c, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: Implement Init3D and Uninit3D.

2006-04-18  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c:
	advpack: Set the destination directory to the working directory if key equals SourceDir.

	* dlls/advpack/advpack.c:
	advpack: Add the ability to set multiple keys on one line in set_ldid.

	* dlls/advpack/advpack.c, dlls/advpack/advpack_private.h,
	  dlls/advpack/files.c, dlls/advpack/install.c:
	advpack: Put function declarations in advpack_private.h.

2006-04-19  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpcrt4.spec, include/rpcdce.h:
	rpcrt4: Stub implementation for rpcrt4.RpcMgmtEpEltInqBegin().

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpcrt4.spec, include/rpcdce.h:
	rpcrt4: Add a stub implementation for rpcrt4.RpcMgmtInqIfIds().

	* dlls/ntdll/ntdll.spec, dlls/ntdll/sync.c, include/winternl.h:
	ntdll: Stub implementations of NtCreateIoCompletion, NtSetIoCompletion, and NtRemoveIoCompletion.
	Based on a patch by Rob Shearman.

2006-04-18  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/bitblt.c:
	gdi32: Fix return values in BitBlt/StretchBlt.

	* dlls/gdi/bitblt.c:
	gdi32: Fix {Bit,Stretch}Blt fallbacks to StretchDIBits.

2006-04-18  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c:
	comctl32: header: Remove the unused bUnicode.

	* dlls/comctl32/header.c:
	comctl32: header: Correct WM_[GS]ETUNICODEFORMAT.

2006-04-19  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/classes.c, dlls/msi/msi.c:
	msi: Clean up memset usage.

	* dlls/msi/classes.c:
	msi: Fix a regression caused by some bad logic.

	* dlls/msi/helpers.c:
	msi: Don't fall back to the folder's parent if the folder doesn't exist.

2006-04-18  Alexandre Julliard <julliard@winehq.org>

	* programs/explorer/hal.c:
	explorer: Reuse drives that point to the same device to avoid memory leaks.
	Also print a warning if HAL support is not compiled in.

	* tools/winebuild/build.h, tools/winebuild/import.c,
	  tools/winebuild/main.c, tools/winebuild/winebuild.man.in:
	winebuild: Disable linking to external symbols by default.

	* dlls/wldap32/ber.c, dlls/wldap32/wldap32.spec:
	wldap32: Added a wrapper for ber_scanf.

	* dlls/wldap32/ber.c, dlls/wldap32/wldap32.spec:
	wldap32: Added a wrapper for ber_printf.

	* dlls/wldap32/ber.c, dlls/wldap32/wldap32.spec:
	wldap32: Add wrappers for the ber_* functions.

	* dlls/ntdll/misc.c, dlls/ntdll/ntdll.spec:
	ntdll: Add wrappers for the remaining math functions.

	* dlls/ntdll/ntdll.spec, dlls/ntdll/string.c, dlls/ntdll/wcstring.c:
	ntdll: Add wrappers for the string functions.

	* configure, configure.ac:
	configure: Added check to catch old versions of the dbus library.

2006-04-18  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/helpers.c:
	msi: Simplify create_component_advertise_string() a little.

2006-04-18  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Fix differences between the size returned in sizing the
	buffer for interfaces and the buffer actually used.

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Initialise BSTR pointer to NULL in VARIANT_UserUnmarshal.
	Initialise BSTR pointer to NULL before calling BSTR_UserUnmarshal,
	otherwise BSTR_UserUnmarshal will try to use the memory in the
	pointer.

	* tools/widl/typelib.c, tools/widl/write_msft.c:
	widl: Ignore [object] attribute on interfaces written to a typelib.

2006-04-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winspool/tests/info.c:
	winspool: Add a test for DocumentProperties.

2006-04-18  Alexandre Julliard <julliard@winehq.org>

	* programs/explorer/Makefile.in, programs/explorer/desktop.c,
	  programs/explorer/explorer_private.h, programs/explorer/hal.c:
	explorer: Initial version of dynamic drive support using HAL.

	* configure, configure.ac, include/config.h.in:
	configure: Added checks for HAL libraries.

	* libs/wine/ldt.c:
	libwine: Added a couple of missing memory constraints in LDT syscalls.

2006-04-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Use DocHost, not WebBrowser, in navigate_url.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Use DocHost, not WebBrowser, in Shell DocObject View window.

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/events.c,
	  dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Move connection points to DocHost object.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/navigate.c,
	  dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Use Dochost, not WebBrowser, in deactivate_document.

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/frame.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Get rid of WebBrowser dependency in DocHost object.

	* dlls/shdocvw/client.c, dlls/shdocvw/frame.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Move IOleInPlaceFrame to DocHost object.

	* dlls/shdocvw/client.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Move IServiceProvider to DocHost object.

	* dlls/shdocvw/client.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Move IDispatch to DocHost object.

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Move IOleCommandTarget to DocHost object.

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/navigate.c,
	  dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Move IOleDocumentSite to DocHost object.

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/oleobject.c,
	  dlls/shdocvw/shdocvw.h:
	shdocvw: Move IDocHostUIHandler to DocHost object.

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/navigate.c,
	  dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Move IOleInPlaceSite to DocHost object.

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/navigate.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Move IOleClientSite to new DocHost object to allow sharing
	code between WebBrowser and InternetExplorer.

2006-04-18  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/import.c:
	winebuild: Fixed index in module table for delayed imports.

2006-04-15  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Use ARB[f|v]p1.0 for ps2/ps3/vs3.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Use correct register number mask.
	The regmask currently being used is wrong - 0x1FFF includes the high
	two bits of the register type.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Dcl opcode takes 2 parameters.

	* dlls/wined3d/pixelshader.c:
	wined3d: Fix _dw modifier.
	The _dw modifier needs to specify a component swizzle, just like the
	_dz currently does.

2006-04-16  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Fix flow control instructions number of parameters.
	- else, endif, break take 0 parameters [not 2]
	- if, rep take 1 parameter [not 2]
	- breakp takes 1 parameter [not 2]
	- move all flow control instructions in one place
	- sync software shaders signatures with this

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Skip unhandled opcodes in vshaders.

	* dlls/wined3d/pixelshader.c:
	wined3d: Texkill is supported for ps2.0-3.0.

2006-04-17  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c:
	comctl32: Send Unicode notifications if required in header control.

	* dlls/comctl32/listview.c:
	comctl32: Scroll listview if changing scroll bounds changes the scroll pos.

	* dlls/shell32/shlview.c:
	shell32: Use LVCOLUMW instead of LVCOLUMNA in LVM_INSERTCOLUMNW listview message.

	* programs/progman/dialog.c, programs/progman/grpfile.c:
	progman: Fix two simple bugs.
	Use correctly the GetOpenFileName function.
	Use _lcreat instead of _lopen to create a new file.

2006-04-18  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: More tests and fixes for STGM_PRIORITY.

	* dlls/ole32/tests/clipboard.c:
	ole32: Fix a declaration.

	* dlls/ole32/tests/marshal.c:
	ole32: Uncomment some code to make sure it is compiled, but don't run it.

2006-04-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, include/wine/wined3d_interface.h:
	wined3d: Add the remaining DirectDraw methods to WineD3DSurface.

	* dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	wined3d: Add the remaining IWineD3DDevice methods.

	* dlls/wined3d/Makefile.in, dlls/wined3d/device.c, dlls/wined3d/palette.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: Add IWineD3DPalette.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Add a parameter for surface type selection.

2006-04-17  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shell32/shres.rc, dlls/shell32/shresdef.h:
	shell32: Define 2 more avi resources.

2006-04-17  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac:
	configure: Exit with a non-zero exit code if a core dependency is missing.

	* configure, configure.ac, dlls/Makedll.rules.in,
	  dlls/Makeimplib.rules.in, dlls/Maketest.rules.in,
	  programs/Makeprog.rules.in:
	configure: Remove the --disable-debug and --disable-trace options.

	* dlls/msi/msi.c, dlls/msi/package.c, dlls/msi/registry.c,
	  dlls/msi/tests/msi.c:
	msi: Fix some possible NULL pointer dereferences (Coverity).

	* programs/regsvr32/regsvr32.c:
	regsvr32: Ignore the /c flag.

2006-04-16  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool: Basic tests for DeleteMonitor.

	* dlls/winspool/info.c:
	winspool: Implement DeleteMonitor.

2006-04-17  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c:
	advpack: Add install_init/release to perform install initialization.

	* dlls/advpack/advpack.c:
	advpack: Factor out OCX registering into do_ocx_reg.

	* dlls/advpack/advpack.c:
	advpack: Use get_parameter to read the three parameters of RegisterOCX.
	Use get_parameter to read the three parameters to RegisterOCX.
	Remove the ERRs and TRACEs now that we return the HRESULT.

	* dlls/advpack/advpack.c:
	advpack: The fallback directory is the fifth field index, not the sixth.

	* dlls/advpack/install.c:
	advpack: Use the default queue callback when calling SetupInstallFromInfSection.

	* dlls/advpack/advpack.c:
	advpack: Fix the documentation for RegisterOCX.

	* dlls/advpack/advpack.c:
	advpack: Fix the return type of RegisterOCX.

2006-04-16  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/client.c, tools/widl/server.c:
	widl: Support multiple RPC interfaces per binary.

2006-04-16  Alexander N. Sørnes <alex@thehandofagony.com>

	* dlls/twain_32/rsrc.rc, dlls/twain_32/twain_No.rc:
	twain_32: Added Norwegian resource.

2006-04-17  Alexander N. Sørnes <alex@thehandofagony.com>

	* programs/winefile/No.rc:
	winefile: Fix typo in the Norwegian resources.

2006-04-16  Gerald Pfeifer <gerald@pfeifer.com>

	* configure, configure.ac:
	configure: On FreeBSD, make wine-pthread the new default.

2006-04-15  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/twain_32/rsrc.rc, dlls/twain_32/twain_Fr.rc:
	twain_32: French localization.

	* dlls/shlwapi/shlwapi.rc, dlls/shlwapi/shlwapi_Fr.rc:
	shlwapi: French localization.

	* dlls/iccvid/iccvid_Fr.rc, dlls/iccvid/rsrc.rc:
	iccvid: French localization.

	* dlls/msvfw32/msvfw32_Fr.rc, dlls/msvfw32/rsrc.rc:
	msvfw: French localization.

	* dlls/msvidc32/msvidc32_Fr.rc, dlls/msvidc32/rsrc.rc:
	msvidc: French localization.

	* programs/winecfg/Fr.rc:
	winecfg: French localization.

2006-04-17  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/dbghelp/stack.c:
	dbghelp: Params of LPSTACKFRAME64 only has 4 elements.

2006-04-15  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	wined3d: Add a method to change the front and back buffers.

2006-04-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/d3d8_private.h, dlls/d3d9/d3d9_private.h,
	  dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Add IWineD3DSurface::Blt.

2006-04-15  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/uxtheme/metric.c:
	uxtheme: Fix GetThemeSysString as the error-path was always taken.

2006-04-15  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/typegen.c:
	widl: Implement support for unique pointers to arrays.

2006-04-14  Andrew Riedi <andrewriedi@gmail.com>

	* programs/explorer/systray.c:
	explorer: Fixed a typo in system tray.

2006-04-13  Aric Stewart <aric@codeweavers.com>

	* dlls/comctl32/listview.c:
	comctl32: Listview notify fix.
	Turn off updating for that the unselect and select and then turns it
	on for the focus call, this results in 1 edit notify being sent at the
	end of the operation.

2006-04-14  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/tests/heap.c:
	kernel: Add some tests for Lock/Unlock memory handles.

	* dlls/kernel/heap.c:
	kernel: Update WARN/ERR and documentation for GlobalLock/GlobalUnlock.

2006-04-14  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Added Top, Left, Height and Width properties implementation.

	* dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Store IOleInPlaceSite in WebBrowser object.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Update pos_rect and clip_rect in SetObjectRects.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/oleobject.c:
	shdocvw: Better window handling.
	Use unicode version of DefWindowProc in unicode window procs.
	Fix window styles.

	* dlls/shell32/shlexec.c:
	shell32: Don't crash in SHELL_ExecuteW if psei->lpDirectory is NULL.

2006-04-14  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/misc.c:
	wldap32: Document the miscellaneous functions.

2006-04-13  Sagar Mittal <sagar.mittal@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Fix null pointer check in IWineD3DImpl_GetPixelShader.

2006-04-14  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winspool/info.c, dlls/winspool/tests/info.c:
	winspool: Add a test for GetPrinterDriver, make it pass under Wine.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/ndr_misc.h:
	rpcrt4: Constify NDR function tables.

2006-04-13  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/comctl32/animate.c:
	comctl32: Change return code comparison in AVI control.

2006-04-13  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c:
	advpack: Document RegisterOCX.

2006-04-13  Anssi Hannula <anssi.hannula@gmail.com>

	* dlls/shell32/shell32_Fi.rc:
	shell32: Fix common files directory location in shell32_Fi.rc.

2006-04-12  Thomas Kho <tkho@ucla.edu>

	* dlls/user/tests/input.c, dlls/x11drv/keyboard.c, server/queue.c:
	x11drv: Properly handle VK_LMENU input.

2006-04-14  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/tests/toolhelp.c:
	kernel: Load tests again on NT 3.51 (toolhelp API not present).

2006-04-13  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	wined3d: Add GetHWND and SetHWND methods to IWineD3DDevice.

2006-04-13  Stefan Dösinger <stefandoesinger@gmx.at>

	* include/wine/wined3d_interface.h:
	wined3d: Add macros for (Un)Init3D and Flip.

2006-04-13  Antonio Codazzi <f_sophia@libero.it>

	* dlls/shell32/shell32_It.rc:
	shell32: Italian resources update.

2006-04-13  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/winefile/winefile.c:
	winefile: Use header full drag.

	* include/tchar.h:
	include: Fix a mistake in the declaration of _sntprintf.

2006-04-13  Anssi Hannula <anssi.hannula@gmail.com>

	* programs/winecfg/Fi.rc:
	winecfg: Update the Finnish resources.

	* dlls/twain_32/rsrc.rc, dlls/twain_32/twain_Fi.rc:
	twain_32: Add Finnish resources.

2006-04-13  Mike McCormack <mike@codeweavers.com>

	* include/wtypes.idl:
	wtypes.idl: Add size attribute to a void pointer.

	* tools/widl/write_msft.c:
	widl: Add support for VT_I8 and VT_UI8 to msft typelibs.

2006-04-13  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/mmap.c:
	libwine: Only try to mmap the exact address when reserving memory.
	This should avoid some extra work on platforms that need the
	try_mmap_fixed function.

	* libs/wine/mmap.c:
	libwine: Reorganize the mmap code a bit to avoid some #ifdefs.

	* server/ptrace.c:
	server: Remove the use_ptrace variable.

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

----------------------------------------------------------------
2006-04-13  Paul Vriens <Paul.Vriens@xs4all.nl>

	* programs/winecfg/Nl.rc:
	winecfg: Update Dutch resource.

2006-04-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/advpack/reg.c:
	advpack: Fixed a couple of typos in Unicode conversion.

	* dlls/crypt32/encode.c:
	crypt32: Fixed day/month mismatch in time encoding routines.

	* dlls/crypt32/cert.c:
	crypt32: Avoid crash on NULL pointer in trace.

2006-04-08  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/menu.c:
	user: Fix dereferencing a potential NULL pointer.

2006-04-12  Jason Green <jave27@gmail.com>

	* dlls/wined3d/utils.c:
	wined3d: Add case 0 to switch statement and fix the fixme.
	Screwed up a copy/paste from one of my recent patches.  This
	eliminates the erroneous FIXME for calls to D3DFmtMakeGlCfg() with 0
	as the Stencil format.  Also, it changes the FIXME to print the
	correct variable.

2006-04-13  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/version/install.c:
	version: Translate some German comments.

2006-04-13  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/usp10.c:
	usp10: Add some tests to ScriptGetFontProperties.

2006-04-13  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/msvcrt/undname.c:
	msvcrt: If caller passes a NULL deallocator to __unDNameEx, don't use it.

2006-04-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, include/wine/wined3d_interface.h:
	wined3d: Add IWineD3DSurface::Flip.

	* dlls/d3d8/device.c, dlls/d3d8/directx.c, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	wined3d: Split device creation and opengl initialization.

2006-04-12  Karsten Elfenbein <kelfe@gmx.de>

	* dlls/wined3d/device.c:
	wined3d: Combined unhandled renderstate cases into one.

	* dlls/wined3d/device.c:
	wined3d: IWineD3DDeviceImpl_Reset cleanup.
	Joined the functions as it looks like a typo in the function name
	(IWineD3DDeviceImpl_Rest isn't used anywhere but contains comments).

2006-04-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/shell32/shlexec.c:
	shell32: Allocate wszApplicationName on the heap as it may be longer than MAX_PATH.

	* dlls/shdocvw/dochost.c:
	shdocvw: Use GetClientRect, not GetWindowRect in create_doc_view_hwnd.

2006-04-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/wineps/init.c:
	wineps: Load generic.ppd from the data dir if nothing else is specified.

2006-04-12  Huw Davies <huw@codeweavers.com>

	* configure, configure.ac, include/config.h.in, tools/sfnt2fnt.c:
	tools: Don't try to use FT_Load_Sfnt_Table unless FreeType has it.

2006-04-12  Alexandre Julliard <julliard@winehq.org>

	* loader/preloader.c:
	preloader: Workaround for broken no-exec protections.
	Add an executable page at the top of the address space to defeat
	broken no-exec protections that play with the code selector limit.

2006-04-12  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/listview.c:
	comctl32: Fix listview column resize.
	Draw a track line after a HDN_TRACK, resize the columns only after a
	HDN_ITEMCHANGED.
	Create the header with HDS_FULLDRAG.

	* dlls/comctl32/header.c:
	comctl32: Fix listview column resize.
	Fix the HDS_FULLDRAG headers notifications, invalidate such a control
	after a mouse move.

2006-04-12  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/avifil32/acmstream.c, dlls/avifil32/api.c,
	  dlls/avifil32/editstream.c, dlls/avifil32/getframe.c,
	  dlls/avifil32/icmstream.c:
	avifil32: Avoid not necessary zeroing out of an allocated memory block.

2006-04-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/resource.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add a resource dumper.

2006-04-11  Jean-Philippe Theriault <Jean-Philippe_Theriault@cimmetry.com>

	* dlls/gdi/enhmetafile.c:
	gdi32: Fix for PlayEnhMetaFileRecord support of EMR_SELECTPALETTE record.

2006-04-08  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/tests/.gitignore, dlls/kernel/tests/Makefile.in,
	  dlls/kernel/tests/toolhelp.c:
	kernel32: Added some tests for toolhelp functions.

	* dlls/kernel/toolhelp.c:
	kernel32: Rewrote toolhelp implementation only on top of ntdll functions.

2006-04-11  Stefan Leichter <Stefan.Leichter@camLine.com>

	* programs/winetest/Makefile.in:
	winetest: Added dnsapi tests.

2006-04-12  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c:
	wined3d: Enable texld instruction (shaders 1.4).

2006-04-11  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Reorganize shaders code a bit.

2006-04-11  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/page.c:
	wldap32: Improve error handling in create_page_control().

2006-04-10  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool: Basic tests for AddMonitor.

2006-04-11  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: Implement AddMonitor.

2006-04-11  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/vertexdeclaration.c,
	  dlls/d3d9/vertexshader.c:
	d3d9: VertexDeclaration and VertexShader should keep reference to the parent device object.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/vertexshader.c:
	d3d8: VertexShader should keep reference to the parent device object.

2006-04-12  Alexandre Julliard <julliard@winehq.org>

	* server/window.c:
	server: Don't attach thread input to the desktop.
	Now that the desktop can be owned by a thread we need to explicitly
	check for it in the thread attach check.

2006-04-11  Petr Tesarik <hat@tesarici.cz>

	* dlls/winedos/int2f.c:
	winedos: Implement INT2F/AX=1501 (get drive device list).

2006-04-11  Juan Lang <juan_lang@yahoo.com>

	* dlls/msi/appsearch.c:
	msi: Fix possible crash bugs in error path.

2006-04-11  Mike McCormack <mike@codeweavers.com>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/regsvr.c:
	shdocvw: Register iexplore.exe as a COM local server.

2006-04-11  Jason Green <jave27@gmail.com>

	* dlls/wined3d/vertexdeclaration.c:
	wined3d: Spelling fixes and downgrade a FIXME to a TRACE.

2006-04-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/swapchain.c:
	wined3d: Don't do a logical AND on the swap effect.

2006-04-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/resource.c:
	wined3d: Store the private data in IWineD3DResource::SetPrivateData.

2006-04-12  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/editor.c, dlls/riched20/para.c:
	riched20: Allow inheriting table cell definitions from previous table row.
	Allow inheriting of table cell definitions from a previous table row
	when the current table row does not contain a \trowd, only an \intbl.

2006-04-11  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/shlwapi/path.c, dlls/shlwapi/tests/path.c:
	shlwapi: Ignore leading spaces in PathMatchSpec.

	* dlls/shlwapi/tests/path.c:
	shlwapi: Add tests for PathMatchSpec.

	* dlls/gdi/font.c:
	gdi: Do not convert string paramter when rendering glyph indexes.

	* dlls/gdi/font.c:
	gdi: Write out glyph count correctly in GetCharacterPlacementA.

2006-04-11  Alexandre Julliard <julliard@winehq.org>

	* Makefile.in:
	Makefile: There are currently no tests in the programs directory.

2006-04-09  Dan Kegel <dank@kegel.com>

	* dlls/x11drv/clipboard.c:
	x11drv: Fix two clipboard bugs.
	Fix two clipboard problems that caused BadAtom crashes and caused some
	clipboard formats to not be exported properly.

2006-04-11  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c:
	wined3d: Remove bogus address register warning for pixel shaders.
	Pixel shaders don't have an address register, this warning is bogus.
	D3DSPR_ADDR is interpreted as D3DSPR_TEXTURE for pixel shaders.

2006-04-11  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/install.c:
	advpack: Implement UserInstStubWrapper.

2006-04-11  Mike McCormack <mike@codeweavers.com>

	* dlls/avifil32/acmstream.c, dlls/avifil32/api.c, dlls/avifil32/avifile.c,
	  dlls/avifil32/editstream.c, dlls/avifil32/extrachunk.c,
	  dlls/avifil32/getframe.c, dlls/avifil32/icmstream.c,
	  dlls/avifil32/tmpfile.c, dlls/avifil32/wavfile.c:
	avifil32: Fix a regression caused by patch removing GlobalAllocs by using HEAP_ZERO_INIT.

2006-04-08  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/msvcrt/file.c:
	msvcrt: IO init.
	Make sure, when copying handles from std ones (when no io info is
	inherited from parent) to create inheritable handles (spotted by
	qingdao daoo).

2006-04-10  Eric Pouech <eric.pouech@wanadoo.fr>

	* tools/winedump/debug.c, tools/winedump/dump.c,
	  tools/winedump/minidump.c, tools/winedump/pe.c, tools/winedump/pe.h,
	  tools/winedump/winedump.h:
	winedump: Constify some pointers.

2006-04-11  Alexandre Julliard <julliard@winehq.org>

	* tools/winedump/dump.c, tools/winedump/pe.c:
	winedump: Added detection of Wine fake dlls.
	Also pass the real start of the file to the dump functions, instead of
	having the generic code care about the specifics of the individual
	file formats.

2006-04-11  Petr Tesarik <hat@tesarici.cz>

	* dlls/winedos/dosexe.h, dlls/winedos/int2f.c, dlls/winedos/module.c:
	winedos: Implement true CDROM DOS device driver.

	* dlls/winedos/devices.c, dlls/winedos/dosexe.h:
	winedos: Move all device driver initialization code to a newly written
	function DOSDEV_SetupDevice().

	* dlls/winedos/int2f.c:
	winedos: Move most of MSCDEX stuff into a separate function.

	* dlls/winedos/devices.c, dlls/winedos/dosexe.h:
	winedos: Move some declarations to the header file.

2006-04-10  Antonio Codazzi <f_sophia@libero.it>

	* dlls/wininet/rsrc.rc, dlls/wininet/wininet_Eo.rc:
	wininet: Added Esperanto language.

	* dlls/shlwapi/shlwapi.rc, dlls/shlwapi/shlwapi_Eo.rc:
	shlwapi: Added Esperanto language.

	* dlls/oleaut32/oleaut32.rc, dlls/oleaut32/oleaut32_Eo.rc:
	oleaut32: Added Esperanto language.

	* dlls/mpr/mpr.rc, dlls/mpr/mpr_Eo.rc:
	mpr: Added Esperanto language.

	* programs/view/Eo.rc, programs/view/viewrc.rc:
	view: Added Esperanto language.

	* dlls/serialui/Eo.rc, dlls/serialui/serialui_rc.rc:
	serialui: Added Esperanto language.

	* dlls/mpr/mpr_It.rc:
	mpr: Italian language update.

	* dlls/wininet/wininet_It.rc:
	wininet: Italian language update.

2006-04-10  Henning Gerhardt <henning.gerhardt@web.de>

	* programs/winecfg/De.rc:
	winecfg: Update German resource.

2006-04-11  Mike McCormack <mike@codeweavers.com>

	* dlls/shdocvw/factory.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/shdocvw_main.c:
	shdocvw: Move the private class factory declaration into factory.c.

2006-04-11  YunSong Hwang <hys545@dreamwiz.com>

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

2006-04-11  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/format.c:
	msi: Add some more MsiFormatRecord tests.

2006-04-11  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c:
	advpack: Perform a setupapi-level install of the INF file in RunSetupCommand.

	* dlls/advpack/files.c, dlls/advpack/install.c:
	advpack: Implement LaunchINFSectionEx.

	* dlls/advpack/advpack.c, dlls/advpack/files.c, dlls/advpack/install.c,
	  dlls/advpack/reg.c:
	advpack: Standardize the format of advpack traces.
	Display all strings in advpack traces.
	Use debugstr_a/w for TRACE strings.

	* dlls/advpack/advpack.c, dlls/advpack/files.c, dlls/advpack/install.c:
	advpack: Standardize the format of advpack parameter lists.

2006-04-10  Juan Lang <juan_lang@yahoo.com>

	* dlls/ntdll/thread.c:
	ntdll: Initialize a variable.
	Fix an uninitialized pointer in RtlCreateUserThread, caught by
	coverity.

	* dlls/crypt32/cert.c:
	crypt32: Fix a typo caught by coverity.

2006-04-11  Jacek Caban <jacek@codeweavers.com>

	* include/exdisp.idl:
	exdisp.idl: Added missing attributes and fix some arguments names.

	* include/exdisp.idl:
	exdisp.idl: Added missing declarations.

2006-04-10  Alexandre Julliard <julliard@winehq.org>

	* server/context_alpha.c, server/context_i386.c, server/context_powerpc.c,
	  server/context_sparc.c, server/context_x86_64.c, server/ptrace.c,
	  server/thread.h:
	server: Moved the tkill function to ptrace.c.

	* server/context_alpha.c, server/context_i386.c, server/context_powerpc.c,
	  server/context_sparc.c, server/context_x86_64.c, server/thread.h:
	server: Get rid of the no longer used get_thread_single_step function.

	* server/debugger.c, server/ptrace.c, server/thread.c, server/thread.h:
	server: Removed the thread attached flag, since we always detach now.

	* server/ptrace.c:
	server: Always detach from the thread when we are done with ptrace.

	* dlls/user/tests/menu.c:
	user: Use a smaller window for the menu test.

2006-04-10  Jacek Caban <jacek@codeweavers.com>

	* include/docobj.idl:
	docobj.idl: Fix some enums declarations.

	* include/exdisp.idl:
	exdisp.idl: Move declarations to better match to IE SDK.

	* include/exdisp.idl:
	exdisp.idl: Added SHDocVw type library declaration.

2006-04-10  Hans Leidekker <hans@it.vu.nl>

	* tools/winapi/win32.api:
	dnsapi: Teach winapi_check about dnsapi.dll.

	* DEVELOPERS-HINTS, documentation/PACKAGING:
	dnsapi: Tell Wine developers and packagers about dnsapi.dll.

2006-04-10  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/Makefile.in, dlls/twain/.gitignore,
	  dlls/twain/Makefile.in, dlls/twain/README, dlls/twain/TWAIN,
	  dlls/twain/capability.c, dlls/twain/ds_audio.c, dlls/twain/ds_ctrl.c,
	  dlls/twain/ds_image.c, dlls/twain/dsm_ctrl.c, dlls/twain/resource.h,
	  dlls/twain/rsrc.rc, dlls/twain/twain.h, dlls/twain/twain.spec,
	  dlls/twain/twain16_main.c, dlls/twain/twain32_main.c,
	  dlls/twain/twain_32.spec, dlls/twain/twain_De.rc,
	  dlls/twain/twain_En.rc, dlls/twain/twain_Ko.rc, dlls/twain/twain_i.h,
	  dlls/twain/ui.c, dlls/twain_32/.gitignore, dlls/twain_32/Makefile.in,
	  dlls/twain_32/README, dlls/twain_32/TWAIN,
	  dlls/twain_32/capability.c, dlls/twain_32/ds_audio.c,
	  dlls/twain_32/ds_ctrl.c, dlls/twain_32/ds_image.c,
	  dlls/twain_32/dsm_ctrl.c, dlls/twain_32/resource.h,
	  dlls/twain_32/rsrc.rc, dlls/twain_32/twain.h,
	  dlls/twain_32/twain.spec, dlls/twain_32/twain16_main.c,
	  dlls/twain_32/twain32_main.c, dlls/twain_32/twain_32.spec,
	  dlls/twain_32/twain_De.rc, dlls/twain_32/twain_En.rc,
	  dlls/twain_32/twain_Ko.rc, dlls/twain_32/twain_i.h,
	  dlls/twain_32/ui.c:
	twain_32: Renamed the dlls/twain directory to dlls/twain_32.

	* configure, configure.ac, dlls/Makefile.in, dlls/riched32/.gitignore,
	  dlls/riched32/Makefile.in, dlls/riched32/riched32.spec,
	  dlls/riched32/richedit.c, dlls/richedit/.gitignore,
	  dlls/richedit/Makefile.in, dlls/richedit/riched32.spec,
	  dlls/richedit/richedit.c:
	riched32: Renamed the dlls/richedit directory to dlls/riched32.

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/comdlg32/.gitignore, dlls/comdlg32/Makefile.in,
	  dlls/comdlg32/cdlg.h, dlls/comdlg32/cdlg16.h, dlls/comdlg32/cdlg32.c,
	  dlls/comdlg32/cdlg_Bg.rc, dlls/comdlg32/cdlg_Ca.rc,
	  dlls/comdlg32/cdlg_Cn.rc, dlls/comdlg32/cdlg_Cs.rc,
	  dlls/comdlg32/cdlg_Da.rc, dlls/comdlg32/cdlg_De.rc,
	  dlls/comdlg32/cdlg_En.rc, dlls/comdlg32/cdlg_Eo.rc,
	  dlls/comdlg32/cdlg_Es.rc, dlls/comdlg32/cdlg_Fi.rc,
	  dlls/comdlg32/cdlg_Fr.rc, dlls/comdlg32/cdlg_Hu.rc,
	  dlls/comdlg32/cdlg_It.rc, dlls/comdlg32/cdlg_Ja.rc,
	  dlls/comdlg32/cdlg_Ko.rc, dlls/comdlg32/cdlg_Nl.rc,
	  dlls/comdlg32/cdlg_No.rc, dlls/comdlg32/cdlg_Pl.rc,
	  dlls/comdlg32/cdlg_Pt.rc, dlls/comdlg32/cdlg_Ru.rc,
	  dlls/comdlg32/cdlg_Si.rc, dlls/comdlg32/cdlg_Sk.rc,
	  dlls/comdlg32/cdlg_Sv.rc, dlls/comdlg32/cdlg_Th.rc,
	  dlls/comdlg32/cdlg_Tr.rc, dlls/comdlg32/cdlg_Uk.rc,
	  dlls/comdlg32/cdlg_Wa.rc, dlls/comdlg32/cdlg_Zh.rc,
	  dlls/comdlg32/cdlg_xx.rc, dlls/comdlg32/colordlg.c,
	  dlls/comdlg32/colordlg16.c, dlls/comdlg32/comdlg32.spec,
	  dlls/comdlg32/commdlg.spec, dlls/comdlg32/filedlg.c,
	  dlls/comdlg32/filedlg16.c, dlls/comdlg32/filedlg31.c,
	  dlls/comdlg32/filedlg31.h, dlls/comdlg32/filedlgbrowser.c,
	  dlls/comdlg32/filedlgbrowser.h, dlls/comdlg32/filetitle.c,
	  dlls/comdlg32/finddlg.c, dlls/comdlg32/finddlg32.c,
	  dlls/comdlg32/fontdlg.c, dlls/comdlg32/fontdlg16.c,
	  dlls/comdlg32/printdlg.c, dlls/comdlg32/printdlg.h,
	  dlls/comdlg32/printdlg16.c, dlls/comdlg32/rsrc.rc,
	  dlls/commdlg/.gitignore, dlls/commdlg/Makefile.in,
	  dlls/commdlg/cdlg.h, dlls/commdlg/cdlg16.h, dlls/commdlg/cdlg32.c,
	  dlls/commdlg/cdlg_Bg.rc, dlls/commdlg/cdlg_Ca.rc,
	  dlls/commdlg/cdlg_Cn.rc, dlls/commdlg/cdlg_Cs.rc,
	  dlls/commdlg/cdlg_Da.rc, dlls/commdlg/cdlg_De.rc,
	  dlls/commdlg/cdlg_En.rc, dlls/commdlg/cdlg_Eo.rc,
	  dlls/commdlg/cdlg_Es.rc, dlls/commdlg/cdlg_Fi.rc,
	  dlls/commdlg/cdlg_Fr.rc, dlls/commdlg/cdlg_Hu.rc,
	  dlls/commdlg/cdlg_It.rc, dlls/commdlg/cdlg_Ja.rc,
	  dlls/commdlg/cdlg_Ko.rc, dlls/commdlg/cdlg_Nl.rc,
	  dlls/commdlg/cdlg_No.rc, dlls/commdlg/cdlg_Pl.rc,
	  dlls/commdlg/cdlg_Pt.rc, dlls/commdlg/cdlg_Ru.rc,
	  dlls/commdlg/cdlg_Si.rc, dlls/commdlg/cdlg_Sk.rc,
	  dlls/commdlg/cdlg_Sv.rc, dlls/commdlg/cdlg_Th.rc,
	  dlls/commdlg/cdlg_Tr.rc, dlls/commdlg/cdlg_Uk.rc,
	  dlls/commdlg/cdlg_Wa.rc, dlls/commdlg/cdlg_Zh.rc,
	  dlls/commdlg/cdlg_xx.rc, dlls/commdlg/colordlg.c,
	  dlls/commdlg/colordlg16.c, dlls/commdlg/comdlg32.spec,
	  dlls/commdlg/commdlg.spec, dlls/commdlg/filedlg.c,
	  dlls/commdlg/filedlg16.c, dlls/commdlg/filedlg31.c,
	  dlls/commdlg/filedlg31.h, dlls/commdlg/filedlgbrowser.c,
	  dlls/commdlg/filedlgbrowser.h, dlls/commdlg/filetitle.c,
	  dlls/commdlg/finddlg.c, dlls/commdlg/finddlg32.c,
	  dlls/commdlg/fontdlg.c, dlls/commdlg/fontdlg16.c,
	  dlls/commdlg/printdlg.c, dlls/commdlg/printdlg.h,
	  dlls/commdlg/printdlg16.c, dlls/commdlg/rsrc.rc:
	comdlg32: Renamed the dlls/commdlg directory to dlls/comdlg32.

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/msacm/.gitignore, dlls/msacm/Makefile.in, dlls/msacm/driver.c,
	  dlls/msacm/filter.c, dlls/msacm/format.c, dlls/msacm/internal.c,
	  dlls/msacm/msacm.rc, dlls/msacm/msacm.spec, dlls/msacm/msacm32.spec,
	  dlls/msacm/msacm32_main.c, dlls/msacm/msacm_Cs.rc,
	  dlls/msacm/msacm_De.rc, dlls/msacm/msacm_En.rc,
	  dlls/msacm/msacm_Es.rc, dlls/msacm/msacm_Fr.rc,
	  dlls/msacm/msacm_Hu.rc, dlls/msacm/msacm_It.rc,
	  dlls/msacm/msacm_Ja.rc, dlls/msacm/msacm_Ko.rc,
	  dlls/msacm/msacm_Nl.rc, dlls/msacm/msacm_No.rc,
	  dlls/msacm/msacm_Pl.rc, dlls/msacm/msacm_Pt.rc,
	  dlls/msacm/msacm_Tr.rc, dlls/msacm/msacm_main.c,
	  dlls/msacm/pcmconverter.c, dlls/msacm/stream.c,
	  dlls/msacm/tests/.gitignore, dlls/msacm/tests/Makefile.in,
	  dlls/msacm/tests/msacm.c, dlls/msacm/wineacm.h,
	  dlls/msacm32/.gitignore, dlls/msacm32/Makefile.in,
	  dlls/msacm32/driver.c, dlls/msacm32/filter.c, dlls/msacm32/format.c,
	  dlls/msacm32/internal.c, dlls/msacm32/msacm.rc,
	  dlls/msacm32/msacm.spec, dlls/msacm32/msacm32.spec,
	  dlls/msacm32/msacm32_main.c, dlls/msacm32/msacm_Cs.rc,
	  dlls/msacm32/msacm_De.rc, dlls/msacm32/msacm_En.rc,
	  dlls/msacm32/msacm_Es.rc, dlls/msacm32/msacm_Fr.rc,
	  dlls/msacm32/msacm_Hu.rc, dlls/msacm32/msacm_It.rc,
	  dlls/msacm32/msacm_Ja.rc, dlls/msacm32/msacm_Ko.rc,
	  dlls/msacm32/msacm_Nl.rc, dlls/msacm32/msacm_No.rc,
	  dlls/msacm32/msacm_Pl.rc, dlls/msacm32/msacm_Pt.rc,
	  dlls/msacm32/msacm_Tr.rc, dlls/msacm32/msacm_main.c,
	  dlls/msacm32/pcmconverter.c, dlls/msacm32/stream.c,
	  dlls/msacm32/tests/.gitignore, dlls/msacm32/tests/Makefile.in,
	  dlls/msacm32/tests/msacm.c, dlls/msacm32/wineacm.h,
	  programs/winetest/Makefile.in:
	msacm32: Renamed the dlls/msacm directory to dlls/msacm32.

2006-04-10  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi32: Add support for ttc indices in the font link list.

2006-04-09  Jason Green <jave27@gmail.com>

	* dlls/wined3d/surface.c, dlls/wined3d/utils.c:
	wined3d: Add some more debugging info.
	Adds more debugging FIXME's if a specific WINED3DFMT_??? isn't supported.

2006-04-09  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Implement support for ref pointers to simple structs.

2006-04-08  Hans Leidekker <hans@it.vu.nl>

	* dlls/gdi/font.c, dlls/gdi/tests/font.c:
	gdi32: GetCharABCWidthsW should not crash on a NULL handle.

	* dlls/wldap32/control.c:
	wldap32: Fix broken parameter handling.

2006-04-09  Hans Leidekker <hans@it.vu.nl>

	* configure, configure.ac, dlls/dnsapi/Makefile.in, include/config.h.in:
	dnsapi: Add a configure check for the resolver library and header.

	* configure, configure.ac, dlls/dnsapi/Makefile.in,
	  dlls/dnsapi/tests/.gitignore, dlls/dnsapi/tests/Makefile.in,
	  dlls/dnsapi/tests/name.c:
	dnsapi: Add a test for DnsNameCompare_A.

	* dlls/dnsapi/Makefile.in, dlls/dnsapi/dnsapi.h, dlls/dnsapi/dnsapi.spec,
	  dlls/dnsapi/name.c:
	dnsapi: Implement DnsNameCompare_{A,W}.

	* configure, configure.ac, dlls/Makefile.in, dlls/dnsapi/.gitignore,
	  dlls/dnsapi/Makefile.in, dlls/dnsapi/dnsapi.spec, dlls/dnsapi/main.c:
	dnsapi: Add a stub implementation of dnsapi.dll.

	* include/Makefile.in, include/windns.h:
	dnsapi: Add windns.h.
	Based on a patch sent by Matthew Kehrer a while ago.

2006-04-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/tests/d3d.c:
	ddraw: Add a test for IDirect3DVertexBuffer7::ProcessVertices.

2006-04-08  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/tests/advpack.c:
	advpack: Add initial implementation of SetPerUserSecValues.

2006-04-10  Eric Pouech <eric.pouech@wanadoo.fr>

	* tools/wine.inf:
	wine.inf: Added dbghelp & imagehlp as fake DLLs.

2006-04-10  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/wined3d_private.h:
	wined3d: Print all errors in checkGLcall.

	* dlls/d3d9/pixelshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c:
	wined3d: Downgrade some FIXMEs.

	* dlls/wined3d/utils.c:
	wined3d: Map D3DFMT_L16, D3DFMT_A16B16G16R16 to OpenGL formats.
	Map:
	D3DFMT_L16 -> GL_LUMINANCE16_EXT
	D3DFMT_A16B16G16R16 -> GL_RGBA16_EXT
	as Raphael suggested.
	Also increase the returned Bpp for unknown and unhandled formats from
	4 to 8 bytes - this part fixes segfault in the F.E.A.R demo. It now
	shows some flashy graphics before it dies again :)

2006-04-10  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shdocvw/iexplore.c:
	shdocvw: Constify IExplore OLE vtables.

	* dlls/x11drv/keyboard.c:
	x11drv: Update French keyboard layout to better match the X11 one.

2006-04-09  Alexander N. Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Updated Norwegian resources.

2006-04-09  Huw Davies <huw@codeweavers.com>

	* fonts/system.sfd:
	fonts: Add accented greek glyphs to System.

2006-04-09  Hans Leidekker <hans@it.vu.nl>

	* dlls/ntdll/rtlstr.c, dlls/ntdll/tests/rtlstr.c:
	ntdll: The closing brace of a guid string is at index 37.

2006-04-08  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/ds3d.c:
	dsound: Fix 2 bugs in ds3d tests.
	Fix 2 bugs in the error paths of the ds3d.c test (coverity).

2006-04-09  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/usp10.c:
	usp10: Terminate some strings in fixmes and traces.

2006-04-09  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: Avoid reading from NULL (GetPrinterDriver).

2006-04-08  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c:
	shdocvw: Set active document of both frame and doc window.

	* dlls/shdocvw/dochost.c:
	shdocvw: Use IOleInPlaceObjectWindowless interface of document in deactivate_document.

	* dlls/mshtml/htmlinput.c, dlls/mshtml/htmlselect.c:
	mshtml: Make sure to use initialized variables.

	* dlls/mshtml/nsembed.c, dlls/mshtml/nsio.c:
	mshtml: Fix ref counting.
	- Fix ref counting.
	- Use This->window instead of QI in NSContainer_Release.

2006-04-08  Antonio Codazzi <f_sophia@libero.it>

	* programs/wineconsole/wineconsole_Eo.rc,
	  programs/wineconsole/wineconsole_res.rc:
	wineconsole: Esperanto language support.

	* dlls/winspool/It.rc, dlls/winspool/winspool.rc:
	winspool: Italian language support.

2006-04-06  Antonio Codazzi <f_sophia@libero.it>

	* programs/winhelp/Eo.rc:
	winhelp: Esperanto language update.

	* programs/regedit/It.rc:
	regedit: Italian language update.

2006-04-08  Antonio Codazzi <f_sophia@libero.it>

	* programs/start/It.rc:
	start: Italian language update.

2006-04-04  Antonio Codazzi <f_sophia@libero.it>

	* programs/uninstaller/Eo.rc:
	uninstaller: Esperanto language adjustments.

2006-04-06  Antonio Codazzi <f_sophia@libero.it>

	* programs/wineconsole/wineconsole_It.rc,
	  programs/wineconsole/wineconsole_res.rc:
	wineconsole: Italian language support.

2006-04-08  Antonio Codazzi <f_sophia@libero.it>

	* dlls/winspool/Eo.rc, dlls/winspool/winspool.rc:
	winspool: Esperanto language support.

2006-04-08  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: A read can fail.

2006-04-08  Stefan Dösinger <stefandoesinger@gmx.at>

	* include/ddraw.h:
	ddraw: Add MAKEFOURCC to ddraw.h.

	* dlls/d3d9/volume.c, dlls/d3d9/volumetexture.c:
	d3d9: Add typecasts for WINED3DLOCKED_BOX to avoid compiler warnings.

2006-04-08  Huw Davies <huw@codeweavers.com>

	* fonts/system.sfd:
	fonts: Add greek glyphs (with thanks to Maria Hadjipanayi).

2006-04-08  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/add.c:
	wldap32: Don't handle NULL attrs twice.

	* dlls/wldap32/init.c:
	wldap32: Don't return uninitialised values.

	* dlls/wldap32/error.c:
	wldap32: Fix overrun by one of static array.

2006-04-08  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/menu.c:
	user: Add an missing element to the hbmmenus array.

2006-04-08  Marcus Meissner <marcus@jet.franken.de>

	* tools/winedump/output.c:
	winedump: Use fchmod() instead of doing system(chmod).

2006-04-08  Robert Reif <reif@earthlink.net>

	* dlls/dsound/capture.c:
	dsound: Remove NULL This pointer checks.

2006-04-07  Robert Reif <reif@earthlink.net>

	* dlls/dsound/capture.c:
	dsound: Remove unnecessary NULL pointer check.

2006-04-08  Troy Rollo <wine@troy.rollo.name>

	* dlls/ntdll/cdrom.c:
	ntdll: Fix DVD_ReadStructure's layout of layer information.
	Fix DVD_ReadStructure to reflect what Windows actually does, not what
	Microsoft (incorrectly) documents it to do and not what the DDK
	headers (incorrectly) suggest it does.

2006-04-07  Detlef Riekenberg <wine.dev@web.de>

	* dlls/ntdll/virtual.c:
	ntdll: Added ARM architecture.

2006-04-05  Robert Reif <reif@earthlink.net>

	* programs/winecfg/En.rc, programs/winecfg/audio.c,
	  programs/winecfg/resource.h:
	winecfg: Add default dsound sample rate and bits per sample.

	* dlls/dsound/dsound.c, dlls/dsound/dsound_main.c,
	  dlls/dsound/dsound_private.h:
	dsound: Set default primary buffer sample rate and bits per sample.
	Programs that are written specifically for 2000 and xp don't bother to
	set the primary buffer format because it's a noop.  However wine is
	patterned after win9x and DirectX 7 or earlier which has a real
	primary buffer and expects the program to change the primary buffer
	format if necessary.

2006-04-07  Alexandre Julliard <julliard@winehq.org>

	* programs/explorer/desktop.c, server/window.c:
	explorer: Don't use ExitWindows on shutdown.
	ExitWindows kills all current processes and that creates a race with
	newly started processes. Instead, simply exit and let the new process
	create a new explorer.

2006-04-06  Mike Hearn <mike@plan99.net>

	* dlls/kernel/path.c:
	kernel: Don't crash on NULL arg in GetShortPathNameW.

	* dlls/comctl32/imagelist.c:
	comctl32: Add OOM codepath in imagelist control.

2006-04-07  Mike Hearn <mike@plan99.net>

	* dlls/gdi/enhmetafile.c:
	gdi: Protect GetEnhMetaFilePaletteEntries against bad handles.

	* dlls/kernel/path.c:
	kernel: Correct SearchPathA argument validation.

2006-04-07  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/capture.c:
	dsound: Fix capture test.
	Remove bogus release of NULL pointer code found by Coverity.

2006-04-07  Mike Hearn <mike@plan99.net>

	* dlls/uxtheme/metric.c:
	uxtheme: Fix GetThemeSysInt.
	TMT_FIRSTINT and TMT_LASTINT are the same value here, so the error
	path would always be taken. Fix to check only that the values are
	outside the possible range.

2006-04-07  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/netapi32/browsr.c, dlls/netapi32/share.c:
	netapi32: Move NetShareEnum from browsr.c to share.c.

2006-04-07  James Hawkins <truiken@gmail.com>

	* dlls/advpack/tests/advpack.c:
	advpack: Add a few more tests for SetPerUserSecValues.

2006-04-07  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/gdi/tests/bitmap.c:
	gdi: Also initialize a variable in the failure case.

2006-04-07  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/table.c:
	msi: Use a debug channel to turn on transform debugging.

2006-04-07  Alexandre Julliard <julliard@winehq.org>

	* server/process.c, server/process.h, server/ptrace.c, server/thread.c,
	  server/thread.h:
	server: Moved read/write_process_memory and get_selector_entry to ptrace.c.

	* server/process.c:
	server: Hide assumptions about alignment inside the read_process_memory function.

	* dlls/ntdll/virtual.c, include/wine/server_protocol.h, server/process.c,
	  server/protocol.def, server/trace.c:
	server: Get rid of alignment requirements in write_process_memory request.
	All the alignment handling is now done in the write_process_memory
	function inside the server.

2006-04-07  Stefan Dösinger <stefandoesinger@gmx.at>

	* include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Allow the inclusion of the wined3d headers when the ddraw headers are included.

	* dlls/d3d8/volume.c, dlls/d3d8/volumetexture.c, dlls/d3d9/volume.c,
	  dlls/d3d9/volumetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/volume.c, dlls/wined3d/volumetexture.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DBOX to wined3d_types.h.

	* dlls/wined3d/basetexture.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/indexbuffer.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/query.c, dlls/wined3d/resource.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/texture.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c, include/wine/wined3d_interface.h:
	wined3d: Rename return values from D3D* to WINED3D*.

2006-04-07  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/filemoniker.c:
	ole32: Fix typo in FileMonikerImpl_BindToObject.
	Fix apparent typo in FileMonikerImpl_BindToObject, where ppf was
	incorrectly passed into IClassFactory_CreateInstance instead of &ppf
	(found by Coverity).

	* dlls/ole32/compositemoniker.c:
	ole32: Check for pcbSize parameter of CompositeMonikerImpl_GetSizeMax being NULL, rather than non-NULL.

	* dlls/ole32/antimoniker.c:
	ole32: Check for pcbSize in AntiMonikerImpl_GetSizeMax being for NULL, not for non-NULL.

	* dlls/ole32/defaulthandler.c:
	ole32: Fix DefaultHandler_EnumAdvises.
	As per MSDN, if the object has no connections then
	IOleObject::EnumAdvises should return a NULL enumerator and S_OK. This
	is the case when This->oleAdviseHolder is NULL, so do this and avert a
	potential NULL dereference of This->oleAdviseHolder (found by
	Coverity).

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Fix typo in LPSAFEARRAY_Unmarshal.
	Fix typo in LPSAFEARRAY_Unmarshal where the check for the failure of
	the SafeArrayCreateEx call was missing a dereference operator (found
	by Coverity).

	* dlls/oleaut32/safearray.c:
	oleaut32: Remove deadcode in SafeArrayPutElement.
	Remove deadcode in SafeArrayPutElement, as lpBstr cannot be NULL
	because of the check at the top of the function on pvData (found by
	Coverity).

	* server/console.c:
	server: Free ptr in console_input_append_hist.
	Free ptr in console_input_append_hist before returning, otherwise it
	will be leaked (found by Coverity).
	Remove the setting of last error on mem_alloc failure, as it is already
	done in mem_alloc.

	* server/token.c:
	server: Handle failure of mem_alloc in duplicate_token.

	* server/token.c:
	server: Handle possible mem_alloc failure in create_token.

	* server/queue.c:
	server: Should use release_object on an object instead of free.

2006-04-07  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/files.c:
	msi: Remove broken volume management code.

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/iexplore.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/shdocvw_main.c:
	shdocvw: Implement IEWinMain using a simple window frame.

	* dlls/x11drv/wintab.c:
	x11drv: Cursors index used with WTI_DEVICES is zero based.

2006-04-07  Huw Davies <huw@codeweavers.com>

	* fonts/system.sfd, tools/sfnt2fnt.c:
	fonts: Add the Won sign in place of the backslash for Korean fonts.

2006-04-07  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.spec, dlls/advpack/files.c:
	advpack: Forward DelNodeRunDLL32A to its Unicode counterpart.

	* dlls/advpack/files.c:
	advpack: Rewrite get_parameter to be able to handle an empty parameter.

2006-04-07  Stefan Dösinger <stefandoesinger@gmx.at>

	* include/wine/wined3d_types.h:
	wined3d: Add WINED3DPRESENT_INTERVAL_* definitions.

	* include/wine/wined3d_types.h:
	wined3d: Add WINED3DPRESENTRATE_DEFAULT.

	* dlls/d3d8/volume.c, dlls/d3d8/volumetexture.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DLOCKED_BOX to wined3d_types.h.

2006-04-07  James Hawkins <truiken@gmail.com>

	* dlls/ntdll/signal_i386.c:
	ntdll: Return error if the signal index equals the size of the array.

2006-04-07  Mike McCormack <mike@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Remove unnecessary check for NULL.

	* server/registry.c:
	server: Avoid comparison of -1 with an unsigned variable.

	* libs/wine/config.c:
	libwine: Fix a memory leak.

	* dlls/msi/classes.c:
	msi: Fix a logic error.

	* dlls/msi/record.c:
	msi: Avoid accessing a null pointer.

	* dlls/msi/string.c:
	msi: Check the correct pointer after allocating memory.

	* dlls/msi/table.c:
	msi: Fix possible free of uninitialized pointer.

2006-04-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c:
	kernel: Fixed set_process_name for the winevdm case.

2006-04-06  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/cubetexture.c, dlls/d3d8/surface.c, dlls/d3d8/texture.c,
	  dlls/d3d9/cubetexture.c, dlls/d3d9/surface.c, dlls/d3d9/texture.c,
	  dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/surface.c,
	  dlls/wined3d/texture.c, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DLOCKED_RECT to wined3d_types.h.

	* dlls/d3d9/basetexture.c, dlls/d3d9/cubetexture.c, dlls/d3d9/device.c,
	  dlls/d3d9/texture.c, dlls/d3d9/volumetexture.c,
	  dlls/wined3d/basetexture.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/texture.c,
	  dlls/wined3d/volumetexture.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Add WINED3DTEXTUREFILTERTYPE to wined3d_types.h.

2006-04-06  Paul Vriens <paul.vriens@xs4all.nl>

	* dlls/netapi32/Makefile.in, dlls/netapi32/netapi32.spec,
	  dlls/netapi32/share.c, include/lmshare.h:
	netapi32: Add (stubbed) NetSessionEnum.

2006-04-06  James Hawkins <truiken@gmail.com>

	* dlls/advpack/tests/advpack.c:
	advpack: Add initial tests for SetPerUserSecValues.

2006-04-06  Huw Davies <huw@codeweavers.com>

	* dlls/comctl32/propsheet.c, dlls/comctl32/tests/.gitignore,
	  dlls/comctl32/tests/Makefile.in, dlls/comctl32/tests/propsheet.c,
	  dlls/comctl32/tests/propsheet.rc:
	comctl32: Set the sheet caption before invoking the sheet callback and before creating the pages.

2006-04-06  Dmitry Timoshkov <dmitry@codeweavers.com>

	* fonts/courier.sfd, fonts/ms_sans_serif.sfd, fonts/small_fonts.sfd,
	  fonts/system.sfd:
	fonts: Add a couple of cyrillic glyphs to all built-in bitmap fonts.
	Also add numero-sign to Courier.

2006-04-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/exception.c:
	ntdll: Print traces for EXC_CallHandler even with the assembly version.

2006-04-05  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/msvcrt/process.c:
	msvcrt: Append extension(.exe) for _spawnve argument.

2006-04-06  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/kernel/process.c, include/config.h.in:
	kernel: Show the exe name instead of wine-[kp]thread in ps and top.

2006-04-05  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/tests/cert.c:
	crypt32: Implement CertCreateSelfSignCertificate, with some tests.

	* dlls/crypt32/store.c, include/wincrypt.h:
	crypt32: Add support for the CERT_KEY_PROV_INFO_PROP_ID certificate property.

2006-03-31  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: Implement EnumMonitorsA on top of EnumMonitorsW.

	* dlls/winspool/info.c:
	winspool: Implement EnumMonitorsW.

2006-04-06  Mike McCormack <mike@codeweavers.com>

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Forward IWebBrowser2::Navigate calls to ::Navigate2.

	* dlls/msi/files.c:
	msi: Avoid a crash if a parameter is NULL.

2006-04-05  Robert Reif <reif@earthlink.net>

	* dlls/winmm/winearts/audio.c:
	winearts: Don't call arts_free if arts_init wasn't successful.

2006-04-05  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi32: Always consume the subst structure.

	* dlls/gdi/freetype.c:
	gdi32: Use the localised family name if present
	(based on a patch on Byeong-Sik Jeon).

	* dlls/gdi/freetype.c:
	gdi32: Move a few functions around.  Should be a nop.

2006-04-05  Mike McCormack <mike@codeweavers.com>

	* include/exdisp.idl:
	shdocvw: Add class definition for InternetExplorer.

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

	* dlls/gdi/bitmap.c, dlls/gdi/tests/bitmap.c:
	gdi32: Add tests for GetBitmapBits and GetObject for a DIB section.
	Make them pass under Wine.

2006-04-05  Paul Vriens <paul.vriens@xs4all.nl>

	* include/lm.h:
	include: Add lmshare to lm.h.

2006-04-05  Stefan Dösinger <stefandoesinger@gmx.at>

	* include/wine/wined3d_interface.h:
	wined3d: Add some type macros to wined3d_interface.h.

2006-04-05  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/spec16.c:
	winebuild: Remove a no longer necessary movzwl instruction.
	This could cause broken relays to be generated depending on the order
	of the entry points in the relay list.
	Also add a few missing tabs in the assembly output.

	* dlls/cards/cards.c:
	cards: Avoid GetPixel to draw round corners, use a clip region instead.

2006-04-04  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c:
	advpack: Factor out advpack error handling into ADV_HRESULT.

2006-04-04  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, programs/Makefile.in,
	  programs/iexplore/.gitignore, programs/iexplore/Makefile.in,
	  programs/iexplore/main.c:
	Add an implementation of iexplore.exe.

	* dlls/shdocvw/shdocvw.spec, dlls/shdocvw/shdocvw_main.c:
	shdocvw: Stub implementation of IEWinMain.

2006-04-04  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/msvcrt/environ.c:
	msvcrt: Fix a TRACE message to avoid buffer overflow.

2006-04-04  Huw Davies <huw@codeweavers.com>

	* fonts/ms_sans_serif.sfd:
	fonts: Add a few missing glyphs.

2006-04-05  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/typegen.c:
	widl: Implement support for ref pointers to arrays of base types.

2006-04-04  Pavel Semerad <semerad@sisal.mff.cuni.cz>

	* dlls/dinput/joystick_linux.c:
	dinput: Fixed joystick with POV and JoystickAImpl_SetProperty-proprange.

2006-04-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/event.c, dlls/x11drv/winpos.c:
	x11drv: Avoid redundant flushing of the thread display.

	* dlls/x11drv/window.c:
	x11drv: Remove one more XSync call.

2006-04-04  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/device.c:
	wined3d: CreateDevice should use the root window.

	* dlls/wined3d/device.c:
	wined3d: Output unhandled renderstates with debug_d3drenderstate.

	* dlls/wined3d/utils.c, include/d3d9types.h, include/wine/wined3d_types.h:
	wined3d: Add D3DFMT_L16.

2006-04-04  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/x11drv/x11drv_main.c:
	x11drv: Make UseXVidMode default to yes.

2006-04-03  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/x11drv/xvidmode.c:
	x11drv: Allow xvidmode to always initialize at least for the gamma functions.

2006-04-04  Mike McCormack <mike@codeweavers.com>

	* dlls/setupapi/setupapi.spec, dlls/setupapi/stubs.c:
	setupapi: Add a stub implementation for RegistryDelnode.

2006-04-04  Huw Davies <huw@codeweavers>

	* dlls/gdi/freetype.c:
	gdi32: Use a function to add entries to the substitution list
	(based on a patch by Byeong-Sik Jeon).

2006-04-04  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi32: Use RtlUshortByteSwap to read big endian words.

2006-04-04  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/cubetexture.c, dlls/d3d9/cubetexture.c,
	  dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Add WINED3DCUBEMAP_FACES to wined3d_types.h.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c,
	  dlls/wined3d/swapchain.c, include/wine/wined3d_interface.h:
	wined3d: Define WINED3DGAMMARAMP based on D3DGAMMARAMP / DDGAMMARAMP.

2006-04-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/exticon.c:
	user: Fixed PrivateExtractIcons to pass the tests when using native dlls.

	* tools/Makefile.in, tools/winegcc/Makefile.in:
	tools: Add LDFLAGS to all the linker invocations.

	* tools/winegcc/winegcc.c:
	winegcc: Don't use the library full name for .so libs.

2006-04-04  Dmitry Timoshkov <dmitry@codeweavers.com>

	* fonts/small_fonts.sfd:
	fonts: Add cyrillic glyphs to the "Small Fonts" built-in bitmap font.

	* fonts/small_fonts.sfd:
	fonts: Use pixels instead of logical units for "Small Fonts" bitmap font metrics.

2006-03-09  Augusto Arcoverde da Rocha <agarobr.listas@gmail.com>

	* dlls/x11drv/keyboard.c:
	x11drv: Fixed handling of XK_KP_Separator.

2006-04-03  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.spec, dlls/advpack/reg.c:
	advpack: Forward RegInstallA to its Unicode counterpart.

	* dlls/advpack/advpack.spec, dlls/advpack/install.c:
	advpack: Forward LaunchINFSectionA to its Unicode counterpart.

	* dlls/advpack/advpack.spec, dlls/advpack/reg.c:
	advpack: Forward RegSaveRestoreOnINFA to its Unicode counterpart.

	* dlls/advpack/advpack.spec, dlls/advpack/reg.c:
	advpack: Forward RegSaveRestoreA to its Unicode counterpart.

	* dlls/advpack/advpack.spec, dlls/advpack/reg.c:
	advpack: Forward RegRestoreAllA to its Unicode counterpart.

2006-03-31  Mike Hearn <mh@codeweavers.com>

	* dlls/kernel/process.c:
	kernel: Don't enforce process handle access rights in Win98 mode.

2006-04-03  Jason Green <jave27@gmail.com>

	* dlls/wined3d/utils.c:
	wined3d: Add a couple more debugging output formats.

2006-04-04  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Filter out garbage from arts-config --libs too.

	* dlls/gdi/freetype.c:
	gdi: Change ReadFontDir error into a warning.

2006-04-04  Stefan Dösinger <stefandoesinger@gmx.at>

	* include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Add WINED3DCLIPSTATUS to wined3d_types.h.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/d3d9/swapchain.c,
	  dlls/wined3d/device.c, dlls/wined3d/swapchain.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Add WINED3DRASTERSTATUS to wined3d_types.h.

2006-04-04  Mike McCormack <mike@codeweavers.com>

	* programs/msiexec/.gitignore, programs/msiexec/Makefile.in,
	  programs/msiexec/rsrc.rc:
	msiexec: Add an icon for msiexec and .msi files.

2006-04-03  James Hawkins <truiken@gmail.com>

	* tools/wine.inf:
	wine.inf: Add hhctrl.ocx to the list of fake dlls.

2006-04-04  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac:
	configure: Warn if the fonts aren't going to be built.

2006-04-03  Alexandre Julliard <julliard@winehq.org>

	* server/ptrace.c:
	server: Don't single step into signal handlers.

	* dlls/ntdll/signal_i386.c:
	ntdll: Save FPU context for all exceptions.

2006-04-03  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/usrmarshal.c:
	ole32: Add documentation for the clip format user marshal functions.

	* tools/widl/typegen.c:
	widl: Fix the type offset for generated conformant string calls.

	* dlls/kernel/kernel32.spec:
	kernel: Remove some stubs that aren't present in NT.

	* dlls/kernel/file.c:
	kernel: Document some file functions.

2006-04-03  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: Make use of WINED3DDEVICE_CREATION_PARAMETERS.

2006-04-03  Mike McCormack <mike@codeweavers.com>

	* dlls/user/driver.c:
	user32: More informative message on failure to load x11drv.

2006-04-03  Huw Davies <huw@codeweavers.com>

	* fonts/.gitignore, fonts/Makefile.in, fonts/small_fonts.sfd:
	fonts: Add an 11 ppem strike of 'Small Fonts'.

2006-04-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/tests/.gitignore, dlls/gdi/tests/Makefile.in,
	  dlls/gdi/tests/bitmap.c, dlls/gdi/tests/font.c,
	  dlls/gdi/tests/gdiobj.c, dlls/gdi/tests/pen.c:
	gdi: Separate GDI tests by moving them into appropriate files.
	Separate GDI tests by moving them into appropriate files:
	bitmap tests to bitmap.c, font test to font.c, pen tests to pen.c.

	* dlls/gdi/gdiobj.c:
	gdi: Move WineEngInit call before stock fonts creation.
	Move WineEngInit call before stock fonts creation, otherwise we end up
	caching wrong fonts before loading built-in bitmap fonts.

2006-04-02  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/vertexbuffer.c,
	  dlls/d3d9/d3d9_private.h, dlls/d3d9/vertexbuffer.c:
	d3dx: VertexBuffer should keep reference to the parent device object.

2006-04-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/setupapi/fakedll.c:
	setupapi: Copy the complete resource tree into the fake dlls.

2006-04-03  Hwang YunSong <hys545@dreamwiz.com>

	* dlls/twain/rsrc.rc, dlls/twain/twain_Ko.rc:
	twain: Add a Korean resource.

2006-04-03  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/winmm/winealsa/audio.c:
	winealsa: Fix pausing when the hardware does not support it.

2006-04-01  Matthew Kehrer <kehrermatt@gmail.com>

	* dlls/url/Makefile.in, dlls/url/url.spec, dlls/url/url_main.c:
	url: Add a function and two stubs.

2006-04-01  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/device.c, dlls/d3d8/swapchain.c, dlls/d3d9/device.c,
	  dlls/d3d9/swapchain.c, dlls/wined3d/device.c,
	  dlls/wined3d/swapchain.c, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DBACKBUFFER_TYPE to wined3d_types.h.

	* dlls/d3d8/device.c, dlls/d3d8/directx.c, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/d3d9/swapchain.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/swapchain.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Add WINED3DDISPLAYMODE to wined3d_types.h.

2006-04-03  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: STGM_PRIORITY implies STGM_SHARE_EXCLUSIVE.

	* dlls/kernel/profile.c:
	kernel32: [Read/Write]PrivateProfile functions accept a NULL filename.

	* dlls/msi/string.c:
	msi: Improve the string table hash.

2006-04-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c, dlls/ntdll/loader.c:
	ntdll: Process --help and --version args earlier on during startup.

2006-04-01  Antonio Codazzi <f_sophia@libero.it>

	* dlls/msi/msi.rc, dlls/msi/msi_It.rc:
	msi: Italian language support.

	* dlls/setupapi/Eo.rc, dlls/setupapi/setupapi.rc:
	setupapi: Esperanto language support.

	* programs/uninstaller/Eo.rc, programs/uninstaller/rsrc.rc:
	uninstaller: Esperanto language support.

	* programs/uninstaller/It.rc:
	uninstaller: Italian language support.

	* programs/notepad/Eo.rc, programs/notepad/rsrc.rc:
	notepad: Esperanto language support.

	* programs/notepad/It.rc:
	notepad: Italian language support.

	* dlls/msi/msi.rc, dlls/msi/msi_Eo.rc:
	msi: Esperanto language support.

	* dlls/commdlg/cdlg_Eo.rc:
	commdlg: Esperanto language update.

	* dlls/commdlg/cdlg_It.rc:
	commdlg: Italian language update.

	* dlls/wineps/wps_It.rc:
	wineps: Italian language update.

	* dlls/user/resources/user32_Eo.rc:
	user32: Esperanto language update.

	* dlls/comctl32/comctl_Eo.rc, dlls/comctl32/rsrc.rc:
	comctl32: Esperanto language support.

	* dlls/comctl32/comctl_It.rc:
	comctl32: Italian language updates.

	* programs/clock/Eo.rc, programs/clock/rsrc.rc:
	clock: Esperanto language support.

2006-04-01  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/basetexture.c:
	wined3d: Do not set the mipmap level count every time a texture is used.

2006-04-02  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/tests/gdiobj.c:
	gdi32: Add tests for 'Small Fonts'.

2006-04-03  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/msvcrt/environ.c, dlls/msvcrt/tests/environ.c:
	msvcrt: Allow environment strings longer than 512 characters.

2006-04-02  Marcus Meissner <marcus@jet.franken.de>

	* dlls/usp10/usp10.c:
	usp10: Fixed debug output of ScriptItemize.

2006-04-01  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/keyboard.c, dlls/dinput/tests/keyboard.c:
	dinput: Keyboard should be acquired before calling GetDeviceState.

2006-04-01  Alexander N. Sørnes <alex@thehandofagony.com>

	* programs/regedit/No.rc:
	regedit: Fix typo in Norwegian resources.

2006-04-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/window.c:
	x11drv: Get rid of XSync calls on window creation and destruction.

	* dlls/x11drv/x11drv.h, dlls/x11drv/x11drv_main.c, dlls/x11drv/xrender.c:
	x11drv: Ignore X errors caused by windows being created or deleted.

2006-03-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi/tests/metafile.c:
	gdi: In metafile test only print debug output if enabled.

	* loader/preloader.c:
	loader: Hide the preloader from the ps output.

	* tools/winewrapper:
	winewrapper: Remove a couple of variables that are no longer needed.

	* dlls/ntdll/loadorder.c:
	ntdll: Get rid of the loadorder wildcard support, builtin is always the default now.

2006-03-31  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/heap.c, dlls/kernel/tests/heap.c:
	kernel: Fix handling of invalid parameter in GlobalSize().

2006-03-31  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/rpc.c:
	ole: Use ncalrpc instead of ncacn_np as the RPC transport.
	Use ncalrpc instead of ncacn_np as the transport as this is more similar
	to how ole32 from NT works and should also be compatible with rpcrt4
	from Win9x, allowing more combinations of dlls to work.

	* dlls/kernel/process.c:
	kernel: Add some documentation for simple process functions.

	* tools/widl/typegen.c:
	widl: There's no need to cast _StubMsg - it's already of the correct type.

	* tools/widl/server.c:
	widl: Only assign variables if not a string and only create a local variable if not a sized parameter.
	Only assign variables if not a string and only create a local variable
	if not a sized parameter. Fixes type mismatches in the generated code
	due to differences in the algorithms between creating local variables
	and using them.

	* tools/widl/server.c:
	widl: Initialise the temporary variable to 0 for parameters with more than one level of indirection.

	* tools/widl/server.c:
	widl: Create the correct variable type for parameters with more than one level of indirection.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.h:
	widl: Re-use print_phase_basetype for generating return value marshaling and unmarshaling code.

	* tools/widl/typegen.c:
	widl: Move handling of base type marshaling and unmarshaling to a separate function.
	Move handling of base type marshaling and unmarshaling to a separate
	function and improve it to support return values.

	* tools/widl/typegen.c:
	widl: Use print_phase_function for printing NdrPointerFree call.

	* tools/widl/typegen.c:
	widl: Add a function to generate the Ndr type calls.
	- Add a function to generate the Ndr type calls.
	- Fix a typo where the aligned buffer was added to itself, rather than
	assigned.

	* tools/widl/typegen.c:
	widl: Only write the buffer incrementing code for the marshaling and unmarshaling phases.
	Only write the buffer incrementing code for the marshaling and
	unmarshaling phases - buffer sizing is handled elsewhere and freeing
	isn't applicable.

	* tools/widl/typegen.c:
	widl: Output the necessary sizing information for other phases.
	Output the necessary sizing information for PHASE_BUFFERSIZE and
	PHASE_FREE as well as PHASE_MARSHAL. Standardise this rule in a new
	function.

	* tools/widl/client.c:
	widl: Output NULL ref pointer check for pointer levels > 1 too.

	* tools/widl/client.c, tools/widl/server.c:
	widl: Fix a GCC warning in the generated client and server code.

	* tools/widl/parser.y, tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: The lval member of var_t is essentially a duplicate of eval->cval.
	- Generate eval's for enums that don't explicitly have one. This means
	that enums written in header files won't match exactly what has been put
	into the IDL file, but the numeric constat is the same and MIDL does a
	similar thing.
	- Replace constant lookups with eval->cval instead of lval.

	* tools/widl/typegen.c:
	widl: De-reference parameters' types before deciding what to do with them.
	De-reference parameters' types before deciding what to do with them.
	Also dereference string parameters since they are immediately
	dispatched to write_string_tfs when the string attribute is detected
	without any further processing done on them.

	* tools/widl/typegen.c:
	widl: Write pointer calls for all non-basetype pointer parameters to functions.

	* tools/widl/header.c:
	widl: Write definitions for MIDL_user_allocate and MIDL_user_free in the header.
	Write definitions for MIDL_user_allocate and MIDL_user_free in the
	header when writing out RPC interfaces to prevent compile failures in
	the generated client/server code.

	* tools/widl/header.c:
	widl: Write out the pre- and postamble for RPC interfaces with no methods.

	* tools/widl/header.c:
	widl: Output interface defined guard for rpc interfaces too.

	* tools/widl/typegen.c:
	widl: NdrFcShort should be written out instead of NdrShort.

	* tools/widl/typegen.c:
	widl: Output the numeric equivalent of FC_END, not the string FC_END itself.

	* tools/widl/typegen.c:
	widl: Support references in type_memsize.

	* tools/widl/client.c, tools/widl/server.c:
	widl: Only output code for non-object interfaces in client and server.
	Only output code for non-object interfaces in client and server
	generation and convert the while loops into for loops.

2006-03-31  Alexandre Julliard <julliard@winehq.org>

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

----------------------------------------------------------------
2006-03-31  Alexandre Julliard <julliard@winehq.org>

	* server/request.c:
	server: Avoid crash on startup when the configuration dir doesn't exist.

	* dlls/user/tests/win.c:
	user/tests: Flush events before running the keyboard event test.

	* dlls/comctl32/tests/monthcal.c:
	comctl32: Force a specific day value in the monthcal test.
	Avoids test failure when the current day happens to be the 31st...

2006-03-30  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.spec:
	advpack: LaunchINFSectionExW is available, so mark it so in the spec file.

	* dlls/advpack/advpack.spec, dlls/advpack/install.c:
	advpack: Forward ExecuteCabA to its Unicode counterpart.

2006-03-30  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/dcom.idl:
	ole32: Remove unnecessary commenting out of the RPC interfaces in the dcom idl file.

	* dlls/wininet/urlcache.c:
	wininet: Fix some string length calculations.
	Fix some string length calculations that didn't account for the
	different sized characters with Unicode.

	* dlls/wininet/urlcache.c:
	wininet: Only access the URL in the cache by the provided offset.

2006-03-30  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move fields common to vertex shaders and pixel shaders to IWineD3DBaseShader.

2006-03-30  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/proplist.c:
	crypt32: Tiny fixes.

	* dlls/crypt32/store.c, dlls/crypt32/tests/store.c:
	crypt32: Fix certificate adding
	- Implement add disposition in CertAddCertificateContextToStore,
	rather than in each store.
	- Add a few more tests.

2006-03-30  Rein Klazes <wijn@wanadoo.nl>

	* dlls/msvcrt/undname.c:
	msvcrt: Fix read beyond end of string in __unDNameEx().

2006-03-30  Detlef Riekenberg <wine.dev@web.de>

	* dlls/spoolss/spoolss.spec, dlls/spoolss/spoolss_main.c:
	spoolss: Add DllAllocSplMem and DllFreeSplMem.

2006-03-30  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/tests/metafile.c:
	gdi32: Add a test for WMF->EMF conversions performed by SetWinMetaFileBits.
	These tests currently fail in Wine.

	* dlls/x11drv/keyboard.c:
	x11drv: Update Hungarian keyboard layout to better match the X11 one.

2006-03-29  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/server.c, tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Implement support for ref pointers to strings.

2006-03-30  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi32: Move the font substitution list to a standard Wine list
	(based on a patch by Byeong-Sik Jeon).

2006-03-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/message.c:
	user: Only wait for sent messages in wait_message_reply.

	* dlls/x11drv/event.c:
	x11drv: Filter a few more event types in filter_event.
	ConfigureNotify and related events should only be processed when
	posted messages are selected. There's no need to handle MappingNotify
	if keyboard events are not selected.

	* dlls/Makefile.in, dlls/make_dlls:
	dlls: Removed a number of no longer needed dependencies.

2006-03-29  Detlef Riekenberg <wine.dev@web.de>

	* DEVELOPERS-HINTS, configure, configure.ac, dlls/Makefile.in,
	  dlls/spoolss/.gitignore, dlls/spoolss/Makefile.in,
	  dlls/spoolss/spoolss.spec, dlls/spoolss/spoolss_main.c:
	spoolss: Add minimal spoolss.dll.

2006-03-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/message.c, dlls/user/win.c:
	user: Don't send WM_PARENTNOTIFY to the desktop window.

2006-03-29  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c, dlls/advpack/tests/install.c:
	advpack: Open the INF file if the RSC_FLAG_INF flag is specified.

2006-03-30  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c:
	advpack: Forward LaunchINFSectionExA to its Unicode counterpart.

	* dlls/advpack/install.c:
	advpack: Fix the documentation for the cmdline parameter of LaunchInfSection/Ex.

2006-03-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/except.c:
	kernel: Resource browsing.
	Try to be a bit more strict when checking for resource mapping in
	exception handler (and prevent some exceptions while in exception
	handler).

2006-03-30  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/d3d8_private.h, dlls/d3d9/d3d9_private.h,
	  dlls/wined3d/directx.c, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DDEVTYPE to wined3d_types.h.

2006-03-30  Henning Gerhardt <henning.gerhardt@web.de>

	* dlls/twain/rsrc.rc, dlls/twain/twain_De.rc:
	twain: Add German resource.

2006-03-30  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/heap.c:
	kernel32: Display the parameter that caused a page fault in GlobalFree().

2006-03-29  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/heap.c, dlls/kernel/tests/heap.c:
	kernel: Fix handling of invalid parameter in GlobalFlags().

2006-03-30  Detlef Riekenberg <wine.dev@web.de>

	* tools/wineconf:
	tools: Remove wineconf.

2006-03-29  Detlef Riekenberg <wine.dev@web.de>

	* DEVELOPERS-HINTS:
	DEVELOPER-HINTS:  Some directories are renamed / removed / added.

2006-03-29  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/olefont.c, dlls/oleaut32/olepicture.c:
	oleaut32: Add IPersist to QueryInterface.

	* dlls/oleaut32/typelib.c:
	oleaut32: Zero out parameter in LoadRegTypeLib in case of failure.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Replace memcmp with IsEqualIID macro.
	Replace memcmp with IsEqualIID macro that doesn't require a size
	parameter and remove the unneeded brackets to give more compact and
	more readable code.

	* dlls/ole32/compobj.c:
	ole32: Don't process posted messages in CoWaitForMultipleHandles.
	Tests with native show that during COM calls posted messages aren't
	retrieved other than COM calls so change the PeekMessage parameters in
	CoWaitForMultipleHandles to duplicate this.

	* dlls/ole32/compobj.c:
	ole32: Try to retrieve messages that are COM calls first.
	Try to retrieve messages that are COM calls first in
	CoWaitForMultipleHandles before retrieving other types.

	* dlls/ole32/compobj.c:
	ole32: Put the PeekMessage call of CoWaitForMultipleHandles into a separate function.
	Put the PeekMessage call of CoWaitForMultipleHandles into a separate
	function so that the order and type of the messages retrieved can be
	customised in the future.

	* dlls/ole32/compobj.c:
	ole32: Whether the message loop is entered in CoWaitForMultipleHandles,
	should depend on whether the current apartment is a single threaded one.

	* dlls/ole32/compobj.c:
	ole32: Pass the no yield flag to PeekMessage.
	Pass the no yield flag to PeekMessage since we sleep in
	MsgWaitForMultipleObjectsEx and the extra context switch is wasteful.

	* server/token.c:
	server: Store the token source.

2006-03-29  Huw Davies <huw@codeweavers.com>

	* include/winuser.h:
	include: Add DFC_POPUPMENU.

2006-03-30  Mike McCormack <mike@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Clean up HTTP_GetCustomHeaderIndex.

	* dlls/wininet/http.c:
	wininet: Use a lookup table sorted by index so we don't need a loop to do lookups.

	* dlls/wininet/http.c:
	WININET: Clean up HttpQueryInfo.
	Fixes another return FALSE without SetLastError.

	* dlls/wininet/http.c:
	wininet: Make sure to set LastError when returning FALSE in HttpQueryInfo.

2006-03-29  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Fix StgOpenStorage's handling of the STGM_PRIORITY flag.

2006-03-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/window.c, dlls/x11drv/winpos.c, dlls/x11drv/x11drv.h,
	  include/winpos.h:
	x11drv: Replace the SWP_WINE_NOHOSTMOVE flag by a lock count.

2006-03-27  Petr Tesarik <hat@tesarici.cz>

	* dlls/ntdll/cdrom.c:
	ntdll: Fix CDROM raw reads.
	- Fix incorrect data sizes.
	- Fix CDDA addressing.
	- Implement XAForm2 mode on Linux.

2006-03-29  Alexandre Julliard <julliard@winehq.org>

	* programs/winecfg/x11drvdlg.c:
	winecfg: Disable the desktop option when configuring a specific application.

2006-03-28  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  include/wine/wined3d_interface.h:
	wined3d: Create an IWineD3DBaseShader class.

	* dlls/wined3d/device.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move the vshader_ins and pshader_ins arrays into their respective objects.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move the SHADER_OPCODE definition to wined3d_private.h.

	* dlls/wined3d/pixelshader.c:
	wined3d: Pass the correct number of parameters for texld with ps version >= 2.

2006-03-29  Mike McCormack <mike@codeweavers.com>

	* dlls/user/sysparams.c:
	user32: Fix SPI_GETLISTBOXSMOOTHSCROLLING, and implement SPI_SETLISTBOXSMOOTHSCROLLING.

	* dlls/user/sysparams.c:
	user32: Implement SPI_[GS]ETUIEFFECTS.

	* dlls/user/sysparams.c:
	user32: Implement SPI_[GS]ETTOOLTIPANIMATION and SPI_[GS]ETTOOLTIPFADE.

	* dlls/user/sysparams.c:
	user32: Implement SPI_[GS]ETMENUANIMATION and SPI_[GS]ETSELECTIONFADE.

	* dlls/user/sysparams.c:
	user32: Implement SystemParametersInfo(SPI_[SG]ETCURSORSHADOW).

	* dlls/user/sysparams.c:
	user32: Implement SystemParametersInfo(SPI_[GS]ETCOMBOBOXANIMATION).

	* dlls/user/sysparams.c:
	user32: Implement SPI_[SG]ETCARETWIDTH.

2006-03-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/mshtml/persist.c:
	mshtml: Don't free the URL we have just stored in the callback object.

	* dlls/x11drv/mouse.c:
	x11drv: Only warp the mouse pointer if it has actually moved.

2006-03-26  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/device.c:
	d3d8: Add a TRACE for IDirect3DDevice8Impl_CreateVertexBuffer.

2006-03-28  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/device.c, dlls/d3d8/directx.c, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/d3d9/swapchain.c, dlls/wined3d/swapchain.c,
	  include/wine/wined3d_types.h:
	wined3d: Use WINED3DSWAPEFFECT in the wined3d headers and code.

	* dlls/d3d8/cubetexture.c, dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/surface.c, dlls/d3d8/texture.c, dlls/d3d8/volume.c,
	  dlls/d3d8/volumetexture.c, dlls/d3d9/cubetexture.c,
	  dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c,
	  dlls/d3d9/indexbuffer.c, dlls/d3d9/surface.c, dlls/d3d9/texture.c,
	  dlls/d3d9/vertexbuffer.c, dlls/d3d9/volume.c,
	  dlls/d3d9/volumetexture.c, dlls/wined3d/basetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/resource.c,
	  dlls/wined3d/surface.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DPOOL to wined3d_types.h.

2006-03-22  Aric Stewart <aric@codeweavers.com>

	* dlls/twain/.gitignore, dlls/twain/Makefile.in, dlls/twain/ds_ctrl.c,
	  dlls/twain/ds_image.c, dlls/twain/dsm_ctrl.c, dlls/twain/resource.h,
	  dlls/twain/rsrc.rc, dlls/twain/twain32_main.c,
	  dlls/twain/twain_En.rc, dlls/twain/twain_i.h, dlls/twain/ui.c:
	twain: Add a property sheet UI for scanning.

2006-03-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/desktop.c, dlls/x11drv/window.c, dlls/x11drv/x11drv.h:
	x11drv: Reinitialize the display settings when using a desktop window.

2006-03-22  Aric Stewart <aric@codeweavers.com>

	* dlls/twain/ds_image.c:
	twain: A few cleanups, using some consts from sane.

2006-03-24  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c:
	widl: Implement support for pointers to base types.

2006-03-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: Fixed compiler warnings.

2006-03-26  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c,
	  include/winnt.h:
	advapi32: Fixed building TRUSTEEs with objects.
	Fill the TRUSTEE structure properly in BuildTrusteeWithObjectsAndName
	and BuildTrusteeWithObjectsAndSid, including regression tests.

	* dlls/comctl32/rebar.c:
	comctl32: Rebar size fix.
	Rebars without any bands should have a height/width of 0.

2006-03-26  Vitaly Lipatov <lav@etersoft.ru>

	* tools/wineshelllink:
	wineshelllink: Remove quotes from Path=<workdir>.

2006-03-28  Jonathan Ernst <jonathan@ernstfamily.ch>

	* tools/wine.inf:
	wine.inf: Add some more fake dlls to the system directory.

2006-03-28  Mike McCormack <mike@codeweavers.com>

	* dlls/mpr/wnet.c:
	mpr: Improve the stub for WNetGetUniversalNameW.

	* server/change.c:
	server: Fix a race condition in the delivery of change notifications.

2006-03-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/window.c:
	x11drv: Avoid setting text or WM hints of the X root window.

2006-03-27  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/Makefile.in,
	  dlls/msacm/winemp3/.gitignore, dlls/msacm/winemp3/Makefile.in,
	  dlls/msacm/winemp3/common.c, dlls/msacm/winemp3/dct64_i386.c,
	  dlls/msacm/winemp3/decode_i386.c, dlls/msacm/winemp3/huffman.h,
	  dlls/msacm/winemp3/interface.c, dlls/msacm/winemp3/l2tables.h,
	  dlls/msacm/winemp3/layer1.c, dlls/msacm/winemp3/layer2.c,
	  dlls/msacm/winemp3/layer3.c, dlls/msacm/winemp3/mpegl3.c,
	  dlls/msacm/winemp3/mpg123.h, dlls/msacm/winemp3/mpglib.h,
	  dlls/msacm/winemp3/tabinit.c, dlls/msacm/winemp3/winemp3.acm.spec,
	  dlls/winemp3.acm/.gitignore, dlls/winemp3.acm/Makefile.in,
	  dlls/winemp3.acm/common.c, dlls/winemp3.acm/dct64_i386.c,
	  dlls/winemp3.acm/decode_i386.c, dlls/winemp3.acm/huffman.h,
	  dlls/winemp3.acm/interface.c, dlls/winemp3.acm/l2tables.h,
	  dlls/winemp3.acm/layer1.c, dlls/winemp3.acm/layer2.c,
	  dlls/winemp3.acm/layer3.c, dlls/winemp3.acm/mpegl3.c,
	  dlls/winemp3.acm/mpg123.h, dlls/winemp3.acm/mpglib.h,
	  dlls/winemp3.acm/tabinit.c, dlls/winemp3.acm/winemp3.acm.spec:
	winemp3: Renamed the dlls/msacm/winemp3 directory to dlls/winemp3.acm.

	* configure, configure.ac, dlls/Makefile.in, dlls/msacm/msg711/.gitignore,
	  dlls/msacm/msg711/Makefile.in, dlls/msacm/msg711/msg711.acm.spec,
	  dlls/msacm/msg711/msg711.c, dlls/msg711.acm/.gitignore,
	  dlls/msg711.acm/Makefile.in, dlls/msg711.acm/msg711.acm.spec,
	  dlls/msg711.acm/msg711.c:
	msg711: Renamed the dlls/msacm/msg711 directory to dlls/msg711.acm.

	* configure, configure.ac, dlls/Makefile.in,
	  dlls/msacm/msadp32/.gitignore, dlls/msacm/msadp32/Makefile.in,
	  dlls/msacm/msadp32/msadp32.acm.spec, dlls/msacm/msadp32/msadp32.c,
	  dlls/msadp32.acm/.gitignore, dlls/msadp32.acm/Makefile.in,
	  dlls/msadp32.acm/msadp32.acm.spec, dlls/msadp32.acm/msadp32.c:
	msadp32: Renamed the dlls/msacm/msadp32 directory to dlls/msadp32.acm.

	* configure, configure.ac, dlls/Makefile.in, dlls/imaadp32.acm/.gitignore,
	  dlls/imaadp32.acm/Makefile.in, dlls/imaadp32.acm/imaadp32.acm.spec,
	  dlls/imaadp32.acm/imaadp32.c, dlls/msacm/imaadp32/.gitignore,
	  dlls/msacm/imaadp32/Makefile.in,
	  dlls/msacm/imaadp32/imaadp32.acm.spec,
	  dlls/msacm/imaadp32/imaadp32.c:
	imaadp32: Renamed the dlls/msacm/imaadp32 directory to dlls/imaadp32.acm.

	* dlls/x11drv/desktop.c, dlls/x11drv/window.c,
	  dlls/x11drv/winex11.drv.spec, dlls/x11drv/x11drv.h,
	  dlls/x11drv/x11drv_main.c, programs/explorer/desktop.c,
	  programs/explorer/explorer.c, programs/explorer/explorer_private.h:
	x11drv: Moved desktop mode handling to the explorer process.
	Per-application desktop mode settings are no longer supported.  Apps
	can be launched in a specific desktop window by using:
	explorer /desktop=name[,widthxheight] app.exe [args]
	If the named desktop already exists the app is launched inside it. The
	default desktop is cleverly named "default".

	* dlls/x11drv/window.c:
	x11drv: Allow setting WM hints for the desktop window.

	* dlls/x11drv/winpos.c:
	x11drv: Support SetWindowPos and ShowWindow on the desktop window.

2006-03-27  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl,
	  dlls/mshtml/nsservice.c, dlls/mshtml/view.c:
	mshtml: Added tooltip implementation.

2006-03-27  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/commdlg/fontdlg.c:
	commdlg: Properly set and retrieve colour value from combo box .

2006-03-27  Robert Shearman <rob@codeweavers.com>

	* dlls/shell32/systray.c, programs/explorer/systray.c:
	shell32: Adding a systray item with an invalid icon handle is allowed.

2006-03-27  Huw Davies <huw@codeweavers.com>

	* dlls/riched20/txtsrv.c:
	riched20: Take a ref on text host.

2006-03-27  Mike McCormack <mike@codeweavers.com>

	* dlls/user/input.c:
	user32: Send a fake mouse movement event after releasing capture.

2006-03-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c:
	ntdll: Limit header_size to the file size.

	* dlls/x11drv/window.c, dlls/x11drv/x11drv.h, dlls/x11drv/x11drv_main.c,
	  dlls/x11drv/xrandr.c, dlls/x11drv/xvidmode.c:
	x11drv: Get rid of the using_wine_desktop flag.

	* dlls/user/user_main.c, server/process.c, server/user.h, server/window.c,
	  server/winstation.c:
	server: Connect to the window station and desktop specified by startup info.
	If window station and desktop aren't inherited from the parent, don't
	connect to them from the server, but from the USER init code where we
	can get the proper values from the startup info structure.

	* server/window.c:
	server: Store window properties in the global atom table instead of
	the per-winstation table.

2006-03-25  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shell32/.gitignore, dlls/shell32/Makefile.in,
	  dlls/shell32/shres.rc, dlls/shell32/shresdef.h:
	shell32: Add an uncompressed AVI displaying the word searching.

2006-03-26  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c, dlls/advpack/tests/install.c:
	advpack: Implement the launching of executables in RunSetupCommand.

	* dlls/advpack/tests/install.c, include/advpub.h, include/urlmon.idl:
	advpack: Define S_ASYNCHRONOUS in advpub.h.

2006-03-27  Alexandre Julliard <julliard@winehq.org>

	* server/process.c, server/request.c:
	server: Fixed process exit code on FreeBSD.

2006-03-24  Petr Tesarik <hat@tesarici.cz>

	* programs/winedbg/break.c:
	winedbg: Fix stepping over an instruction.

2006-03-27  Petr Tesarik <hat@tesarici.cz>

	* dlls/winedos/dosexe.h, dlls/winedos/interrupts.c:
	winedos: Clear TF bit before passing control to a VM86 interrupt handler.

2006-03-26  f_sophia <f_sophia@libero.it>

	* programs/winhelp/Eo.rc, programs/winhelp/rsrc.rc:
	winhelp: Added Esperanto language support.

2006-03-26  Antonio Codazzi <f_sophia@libero.it>

	* dlls/shell32/shell32_Eo.rc:
	shell32: Updated Esperanto translation.

2006-03-26  James Hawkins <truiken@gmail.com>

	* dlls/kernel/process.c, dlls/kernel/tests/process.c:
	kernel: Error out of CreateProcess if the specified current directory
	doesn't exist.

2006-03-26  Vitaly Lipatov <lav@etersoft.ru>

	* tools/wine.inf:
	wine.inf: Add some dll stub dll to the system directory.

2006-03-24  Paul Vriens <paul.vriens@xs4all.nl>

	* tools/wine.inf:
	wine.inf: Add SystemRoot.

2006-03-27  Petr Tesarik <hat@tesarici.cz>

	* dlls/ntdll/signal_i386.c:
	ntdll: Fix debug exceptions from VM86.
	- Set ContextFlags accordingly in save_vm86_context().
	- Raise debug exceptions correctly for debug exceptions.
	- Do not clear TF bit for VM86-generated debug exceptions.

2006-03-26  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c, dlls/advpack/tests/install.c:
	advpack: Set hexe to a non-NULL value to test that the handle is NULL on return.

2006-03-26  Mike McCormack <mike@codeweavers.com>

	* dlls/commdlg/filedlg.c:
	commdlg: Malformed filters are still added to the filter combo box.

	* dlls/comctl32/comctl32undoc.c:
	comctl32: Having an MRU list without a compare function works in Windows.

2006-03-26  H. Verbeet <hverbeet@gmail.com>

	* dlls/msvcrt/scanf.h, dlls/msvcrt/tests/scanf.c:
	msvcrt: Fix reading of signed numbers with unsigned read types in scanf.

2006-03-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/file.c:
	msvcrt: Fix fflush() of files opened for read.
	Some apps, for no particular reason, call fflush() on files opened for
	read.  This keeps them from tripping over their shoelaces.

2006-03-25  Tomas Carnecky <tom@dbservice.com>

	* dlls/opengl32/wgl.c, dlls/opengl32/wgl_ext.c, dlls/x11drv/opengl.c:
	opengl: Put OpenGL setup functions into their own debug channel.

2006-03-25  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/dbg.y, programs/winedbg/debug.l:
	winedbg: Fixes for identifiers.
	- fixed lexical rules for a path name
	- fixed identifier rules so that we get the right precedence
	between ! and ::
	- modules (in mod!name forms) are now handled as tIDENTIFIER
	(tPATH was buggy anyhow)

	* dlls/dbghelp/symbol.c:
	dbghelp: Module should be case insensitive.
	When looking up a symbol name in the form module!name, the module
	lookup should be insensitive.

2006-03-24  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/cubetexture.c, dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/directx.c, dlls/d3d8/surface.c, dlls/d3d8/texture.c,
	  dlls/d3d9/cubetexture.c, dlls/d3d9/d3d9_private.h,
	  dlls/d3d9/device.c, dlls/d3d9/directx.c, dlls/d3d9/surface.c,
	  dlls/d3d9/swapchain.c, dlls/d3d9/texture.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Add WINED3DMULTISAMPLE_TYPE to wined3d_types.h.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Add WINED3DTRIPATCH_INFO to wined3d_types.h.

2006-03-23  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Move the D3DSIO_DCL dumping code into its own function.

2006-03-23  James Hawkins <truiken@gmail.com>

	* dlls/advpack/tests/.gitignore, dlls/advpack/tests/Makefile.in,
	  dlls/advpack/tests/install.c:
	advpack: Add initial tests for RunSetupCommand.

	* dlls/advpack/advpack.spec, dlls/advpack/files.c:
	advpack: Forward DelNodeA to its Unicode counterpart.

	* dlls/advpack/advpack.spec, dlls/advpack/install.c:
	advpack: Forward RunSetupCommandA to its Unicode counterpart.

	* dlls/advpack/advpack.spec, dlls/advpack/files.c:
	advpack: Forward the FileSaveRestore API to their Unicode counterparts.

	* dlls/advpack/advpack.spec, dlls/advpack/files.c:
	advpack: Forward GetVersionFromFileA/ExA to their Unicode counterparts.

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec:
	advpack: Forward SetPerUserSecValuesA to its Unicode counterpart.

2006-03-24  Ken Thomases <ken@codeweavers.com>

	* server/process.c:
	server: Fix memory leak in read_process_memory handler.

2006-03-24  Mike McCormack <mike@codeweavers.com>

	* dlls/ntdll/directory.c:
	ntdll: Recursive notify is implemented.

2006-03-24  Phil Krylov <phil@newstar.rinet.ru>

	* server/signal.c:
	server: Fix compilation under Darwin 7.

2006-03-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmlelem2.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added IHTMLElement2 implementation.

	* include/exdisp.idl:
	exdisp.idl: Added missing IE6 methods to DWebBrowserEvents2.

2006-03-23  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	wined3d: Rectpatch code fix.
	Update the wined3d code to use WINED3DRECTPATCH_INFO, which was added
	with an older patch.

2006-03-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/time.c:
	msvcrt: Implementation of wcsftime (based on a patch by Mike McCormack).

2006-03-22  Paul Vriens <paul.vriens@xs4all.nl>

	* dlls/kernel/cpu.c:
	kernel: Add processor specific environment variables.

2006-03-23  James Hawkins <truiken@gmail.com>

	* dlls/comctl32/tab.c:
	comctl32: A couple fixes for tab icon offsets.
	- Shift selected icons up and non-selected icons down.
	- Add the top or left draw rect to the vertical offset, because it may
	not be zero.

2006-03-22  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.spec, dlls/advpack/files.c:
	advpack: Implement FileSaveMarkNotExistW.

	* dlls/advpack/advpack.spec, dlls/advpack/files.c:
	advpack: Forward AdvInstallFileA to its Unicode counterpart.

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec:
	advpack: Forward the ansi user stub APIs to their Unicode counterparts.

	* dlls/advpack/advpack.spec, dlls/advpack/files.c:
	advpack: Forward AddDelBackupEntryA to its unicode counterpart.

2006-03-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/environ.c:
	kernel: Remove a couple of incorrect asserts.

2006-03-23  Rein Klazes <wijn@wanadoo.nl>

	* dlls/comctl32/tooltips.c:
	comctl32: Do not free LPSTR_TEXTCALLBACK tooltip texts.

2006-03-22  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/tests/thread.c:
	kernel: Load QueueUserWorkItem function dynamically.

2006-03-23  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/server.c, tools/widl/typegen.c:
	widl: Fix base type alignments.
	Generate aligned marshal and unmarshal code for base type arguments
	and return values.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Fix format string size calculation.
	- Move proc format string size calculation from client.c and server.c
	to typegen.c.
	- Implement type format string size calculation.

2006-03-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/tests/winstation.c, server/atom.c, server/class.c:
	server: Class and global atoms should not be local to a window station.

2006-03-22  Marcus Meissner <meissner@suse.de>

	* configure, configure.ac, programs/Makefile.in,
	  programs/avitools/.gitignore, programs/avitools/Makefile.in,
	  programs/avitools/aviinfo.c, programs/avitools/aviplay.c,
	  programs/avitools/icinfo.c, programs/icinfo/.gitignore,
	  programs/icinfo/Makefile.in, programs/icinfo/icinfo.c:
	programs: Move icinfo out of avitools.

2006-03-22  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/vertexshader.c:
	wined3d: Set vertex attribute pointers defined in vertex declarations properly.

	* dlls/wined3d/vertexshader.c:
	wined3d: Fix slightly misleading ParseVertexDeclarationUsage naming.

	* dlls/wined3d/vertexdeclaration.c, include/wine/wined3d_types.h:
	wined3d: Initialise WINED3DVERTEXELEMENT's Reg field in
	IWineD3DVertexDeclarationImpl_ParseDeclaration9.

	* dlls/wined3d/vertexdeclaration.c, dlls/wined3d/wined3d_private.h:
	wined3d: glTypeLookup cleanup.
	Use a struct instead of an UINT array as entries in the glTypeLookup
	table.

	* dlls/wined3d/pixelshader.c:
	wined3d: Store the pixelshader version in the pixelshader object.

2006-03-22  Huw Davies <huw@codeweavers.com>

	* dlls/user/edit.c, dlls/user/tests/edit.c:
	user32: Only adjust the margins if the edit control is above a certain size.

2006-03-22  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec:
	advpack: Forward RebootCheckOnInstallA to its Unicode counterpart.

2006-03-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlelem.c:
	mshtml: Clean up get_all and tags (also fixes a typo).

2006-03-22  Mike McCormack <mike@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Add a shdocvw.dll stub dll to the system directory.

	* dlls/msi/action.c:
	msi: Add stub for the RegisterComPlus and UnregisterComPlus actions.

	* dlls/msi/package.c:
	msi: Don't crash when logging a record with only one field.

2006-03-22  Alexandre Julliard <julliard@winehq.org>

	* server/directory.c, server/handle.c, server/handle.h, server/mailslot.c,
	  server/named_pipe.c, server/object.c, server/object.h,
	  server/registry.c, server/request.c, server/signal.c:
	server: New scheme for cleaning up objects on server exit.
	Objects stored in static variables can now be marked when they are
	created and are automatically cleaned up on exit. This avoids having
	to export a bunch of close_* functions.

2006-03-21  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec:
	advpack: Forward TranslateInfStringExA to its unicode counterpart.

	* dlls/advpack/tests/files.c:
	advpack: Add second null for double null terminated lists.

2006-03-22  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Show "hidden dialogs" but hide them initially.

	* dlls/msi/custom.c:
	msi: Implement custom action type 17.

	* dlls/riched20/.gitignore, dlls/riched20/Makefile.in,
	  dlls/riched20/version.rc:
	riched20: Add a version resource.

	* dlls/wintrust/wintrust_main.c:
	wintrust: Use the definition of WINTRUST_ACTION_GENERIC_VERIFY_V2 in softpub.h.

	* include/Makefile.in, include/softpub.h:
	include: Add softpub.h.

2006-03-22  Kevin Koltzau <kevin@plop.org>

	* dlls/ole32/tests/.gitignore, dlls/ole32/tests/Makefile.in,
	  dlls/ole32/tests/clipboard.c:
	ole32: Initial tests for OLE clipboard functions.

2006-03-21  Bryan Mayland <bmayland@leoninedev.com>

	* dlls/kernel/sync.c, dlls/kernel/tests/sync.c:
	kernel: WaitForMultipleObjectsEx should accept up to MAXIMUM_WAIT_OBJECTS.

2006-03-21  Lei Zhang <leiz@ucla.edu>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Implements FR_WHOLEWORD for EM_FINDTEXT.
	Add FR_WHOLEWORD to riched20's EM_FINDTEXT and fix a couple small bugs
	introduced in earlier patches for EM_FINDTEXT. Additional test cases
	have been added to check for corner cases.  Also improve input
	validation.

2006-03-21  Francois Gouget <fgouget@free.fr>

	* dlls/ddraw/tests/ddrawmodes.c, dlls/ole32/datacache.c,
	  dlls/ole32/storage32.c, dlls/oleaut32/dispatch.c,
	  dlls/shell32/shlfolder.c, dlls/shlwapi/ordinal.c,
	  dlls/shlwapi/path.c, dlls/wininet/gopher.c:
	Assorted spelling fixes.

	* programs/taskmgr/taskmgr.c, programs/taskmgr/taskmgr.h:
	taskmgr: Avoid forward declarations and make functions static.

	* programs/taskmgr/applpage.c:
	taskmgr: Reorder functions to avoid forward declarations.

	* programs/taskmgr/about.c, programs/taskmgr/affinity.c,
	  programs/taskmgr/column.c, programs/taskmgr/graph.c,
	  programs/taskmgr/perfpage.c, programs/taskmgr/proclist.c,
	  programs/taskmgr/procpage.c:
	taskmgr: Avoid forward declarations and make functions static.

	* tools/winapi/win32.api:
	Update win32.api to match the current sources.

	* include/winerror.h:
	include: Add missing error and facility codes.

	* dlls/advapi32/advapi32.spec:
	advapi32: Fix the LsaEnumerateAccountRights() export.

	* include/ntsecapi.h:
	include: Standardize the LsaLookupNames() prototype.

2006-03-21  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut: ITypeInfo::GetIDsOfNames should search inherited interfaces
	regardless of what type they are.
	Add a test for this and dump type infos created with CreateDispTypeInfo.

2006-03-21  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/tests/gdiobj.c, tools/sfnt2fnt.c:
	fonts: Use the EBLC table to retrieve the ascent of the bitmap font.

2006-03-21  Jeff Latimer <lats@yless4u.com.au>

	* programs/winedbg/be_alpha.c, programs/winedbg/be_cpu.h,
	  programs/winedbg/be_i386.c, programs/winedbg/be_ppc.c,
	  programs/winedbg/dbg.y, programs/winedbg/debug.l,
	  programs/winedbg/info.c, programs/winedbg/tgt_active.c,
	  programs/winedbg/tgt_minidump.c, programs/winedbg/winedbg.man.in:
	winedbg: Add display for floating point status.
	Added code to examine and display floating point unit status into
	be_i386.c as info all-regs command.

2006-03-21  Alexandre Julliard <julliard@winehq.org>

	* tools/sfnt2fnt.c:
	sfnt2fnt: Remove output file on failure.

	* dlls/activeds/activeds_main.c, dlls/cfgmgr32/main.c,
	  dlls/cryptdll/cryptdll.c, dlls/d3dim/d3dim_main.c,
	  dlls/d3drm/d3drm_main.c, dlls/msnet32/msnet_main.c,
	  dlls/snmpapi/main.c, dlls/url/url_main.c, dlls/vdmdbg/vdmdbg.c,
	  dlls/winnls32/winnls.c, dlls/wintrust/wintrust_main.c:
	Added DLL_WINE_PREATTACH handling in a number of stub-only dlls.

2006-03-21  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/files.c,
	  dlls/msi/helpers.c:
	msi: Improve handling of short paths.

2006-03-21  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/threadpool.c:
	ntdll: Start of pooling support for RtlQueueWorkItem.
	Start of pooling support for RtlQueueWorkItem. The algorithm
	implmented is very simple - if there are no free threads, create a new
	one.

	* dlls/kernel/tests/thread.c:
	kernel: Add a test for QueueUserWorkItem.

	* dlls/oleaut32/typelib.c:
	oleaut: Better support for invoking methods with VT_VARIANT argument types.

	* dlls/wininet/internet.c:
	wininet: Document InternetCrackUrlW.

	* dlls/wininet/http.c, dlls/wininet/internet.c:
	wininet: InternetCreateUrlW should return the number of bytes needed.
	InternetCreateUrlW should return the number of bytes needed to store
	the URL, not the number of characters (reported by Sven Paschukat).

2006-03-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c, include/winnt.h:
	ntdll: Added a DLL_WINE_PREATTACH call to DllMain for builtins.
	By returning FALSE from this call, a builtin dll can specify that we
	should try to load the native one instead.

	* dlls/ddraw/main.c:
	ddraw: Call DDRAW_ChooseDefaultDriver only on PROCESS_ATTACH.

	* dlls/Makefile.in, dlls/Maketest.rules.in, dlls/make_dlls:
	dlls: Removed a number of dll symlinks that are no longer needed.

	* tools/winewrapper:
	winewrapper: Remove explicit call to wineprefixcreate.
	Now that wineprefixcreate detects the build tree automatically, the
	standard behavior of starting it from ntdll should work fine.

	* programs/wcmd/wcmdmain.c:
	wcmd: Try executing the process even if the exe file doesn't exist.
	It may be a builtin exe in which case the CreateProcess call will
	succeed.

	* tools/wine.inf, tools/wineprefixcreate.in:
	wine.inf: Use the new fake dlls mechanism to create placeholders for
	applications instead of using symlinks.

	* dlls/ntdll/loader.c:
	ntdll: Detect the fake dlls created by setupapi and refuse to load them.

	* dlls/setupapi/Makefile.in, dlls/setupapi/fakedll.c,
	  dlls/setupapi/install.c, dlls/setupapi/setupapi_private.h:
	setupapi: Added support for creating fake dlls at install time.
	This should satisfy applications that access a dll file directly. For
	apps that check the dll version in the file, the version resource is
	copied from the builtin dll.

2006-03-18  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Create single thread for mouse and keyboard hook.
	Put keyboard & mouse hook callbacks into separate thread.
	Move few global variables into object. Delete no longer used crit section.
	For hooks to work properly hook callback have to be in a thread
	with message loop. Some games create separate threads just to handle
	mouse and/or keyboard events that do not have message loop.

2006-03-20  Mike Hearn <mike@plan99.net>

	* dlls/opengl32/Makefile.in, dlls/opengl32/wgl.c:
	opengl32: Optimize thunks by storing GL context in the thread environment block.

2006-03-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/bitmap.c, dlls/gdi/tests/gdiobj.c:
	gdi: Fix a couple of todos in the bitmap test.

2006-03-21  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/commdlg/cdlg_Ko.rc:
	commdlg: Updated Korean translation.

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

2006-03-21  Mike McCormack <mike@codeweavers.com>

	* programs/taskmgr/applpage.c:
	taskmgr: Make some functions static.

	* programs/taskmgr/applpage.c:
	taskmgr: Fix some gcc 4.1 warnings caused by commctrl.h macros.

	* programs/winefile/winefile.c:
	winefile: Fix some gcc 4.1 warnings caused by commctrl.h macros.

2006-03-19  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, include/wine/wined3d_gl.h:
	wined3d: Don't use OpenGL 2.0.

2006-03-20  Paul Vriens <paul.vriens@xs4all.nl>

	* dlls/kernel/cpu.c:
	kernel: Fix model/stepping in GetSystemInfo.
	wProcessorRevision is built from model and stepping.

2006-03-20  Mike McCormack <mike@codeweavers.com>

	* programs/taskmgr/priority.c:
	taskmgr: Eliminate common code and fix a warning.

2006-03-19  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/listview.c:
	comctl32: Get rid of some incorrect casts.

2006-03-20  Alexandre Julliard <julliard@winehq.org>

	* configure.ac:
	configure: Add autoheader to the compile command.

	* configure, configure.ac, dlls/Makedll.rules.in, loader/Makefile.in,
	  programs/Makeprog.rules.in:
	configure: Use --rpath when linking dlls too.

	* programs/Makefile.in, programs/make_progs:
	programs: Get rid of application symlinks, they are no longer needed.

	* dlls/gdi/tests/gdiobj.c, dlls/x11drv/bitmap.c:
	x11drv: Clear new bitmaps if they don't contain any data.

2006-03-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/bitmap.c, dlls/gdi/tests/gdiobj.c:
	gdi: Add a simple test for bitmap bits/metrics
	Add a simple test for bitmap bits/metrics, fix GetBitmapBits for an
	empty (not selected into a DC) bitmap.

2006-03-19  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/regsvr.c:
	msi: Set the InstallerLocation value when registering msi.dll.

2006-03-19  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/heap.c, dlls/kernel/tests/heap.c:
	kernel: Avoid heap corruption on invalid parameter in GlobalFree().

2006-03-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/tests/change.c:
	kernel: Avoid infinite waits in directory change tests.

2006-03-19  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/device.c:
	d3d8: Change the default debug channel to d3d8 for device.c.

	* dlls/d3d8/device.c:
	d3d8: Downgrade a FIXME to a TRACE in IDirect3DDevice8Impl_SetVertexShader.

	* dlls/d3d8/device.c:
	d3d8: Fix comparison in IDirect3DDevice8Impl_DeleteVertexShader.

2006-03-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c, dlls/mshtml/persist.c:
	mshtml: Optimize nsACString handling.

	* dlls/mshtml/htmlbody.c, dlls/mshtml/htmlelem.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/htmlnode.c, dlls/mshtml/htmlselect.c,
	  dlls/mshtml/htmltextarea.c, dlls/mshtml/mshtml_private.h:
	mshtml: Better QueryInterface implementation.

2006-03-19  Alexander N. Sørnes <alex@thehandofagony.com>

	* programs/wordpad/No.rc:
	wordpad: Fix typo in Norwegian resource.

2006-03-19  Vitaly Lipatov <lav@etersoft.ru>

	* programs/regedit/Ru.rc:
	regedit: Fix Russian translation.

	* programs/control/params.h:
	control: Fix datetime name.

2006-03-19  Milko Krachounov <milko@3mhz.net>

	* programs/winecfg/Bg.rc:
	winecfg: Update Bulgarian translation.

2006-03-19  Mike McCormack <mike@codeweavers.com>

	* include/commctrl.h:
	include: LVSETINFOTIPA does not exist.

2006-03-19  Jeff Latimer <lats@yless4u.com.au>

	* programs/winedbg/tgt_active.c:
	winedbg: Copy floating point status to the dbgcontext.

2006-03-18  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/gdi/driver.c:
	gdi: Handle NT style \\.\DISPLAY1 name that we return.

2006-03-18  Robert Shearman <rob@codeweavers.com>

	* dlls/msi/delete.c, dlls/msi/distinct.c, dlls/msi/insert.c,
	  dlls/msi/msipriv.h, dlls/msi/order.c, dlls/msi/select.c,
	  dlls/msi/table.c, dlls/msi/update.c, dlls/msi/where.c:
	msi: Optimise WHERE operations.
	Optimise WHERE operations on matching against strings by adding a new
	function find_matching_rows to the views, which eliminates the need to
	examine every record when executing a query. Implement this function
	in the table using a hash table on the ID stored in the data.

	* dlls/msi/tests/format.c:
	msi: Add a test for MsiFormatRecord with integer fields.

	* dlls/wininet/cookie.c:
	wininet: Copy from the start of the cookie name, not the cookie data.
	Copy from the start of the cookie name, not the cookie data when
	parsing cookies with a NULL cookie name.

	* include/wininet.h:
	include: Add some more defines to wininet.h.

	* programs/wcmd/wcmdmain.c:
	wcmd: Use PACKAGE_VERSION as the wcmd version.

	* dlls/ole32/rpc.c:
	ole: Use the thread pool for executing RPC calls for better performance
	(after the thread pool has been improved).

2006-03-17  Alexandre Julliard <julliard@winehq.org>

	* tools/wineprefixcreate.in:
	wineprefixcreate: Autodetect the running from build tree case.

	* dlls/setupapi/install.c:
	setupapi: Added support for calling executables in a RegisterDlls section.

2006-03-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	ntdll: In MODULE_FlushModrefs, also free dlls that haven't been initialized yet.

2006-03-18  Mike McCormack <mike@codeweavers.com>

	* include/windowsx.h:
	Prevent the use of windowsx.h with Wine source.

	* programs/winefile/winefile.c, programs/winefile/winefile.h:
	winefile: Eliminate use of windowsx.h.

2006-03-18  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/msc.c, dlls/dbghelp/mscvpdb.h:
	dbghelp: MSC fixes.
	- wrong cut & paste across versions of a given record type
	- wrong definition for register_v2

	* dlls/dbghelp/msc.c:
	dbghelp: Support for LF_VTSHAPE in MSC.
	- added preliminary support for VT (virtual table) shape
	type record
	- as we don't do C++, it's just a hack to get rid of
	some errors

	* dlls/dbghelp/msc.c:
	dbghelp: MSC forward declaration.
	- create an infrastructure for handling forward usage
	of type records
	- used it in some cases (pointer to yet not defined udt,
	function signature, modifiers)

	* dlls/dbghelp/msc.c:
	dbghelp: Type parsing refactoring.
	- seperate types' table handling from a single type handling
	by adding codeview_parse_one_type function
	- factored all calls for caching symt
	- make type parsing helpers return the symt instead of a
	simple error status

	* dlls/dbghelp/msc.c:
	dbghelp: Fixes for NB11 types.
	- when checking debug info in NB09 or NB11 format (CodeView),
	try to load the global types section

	* dlls/dbghelp/msc.c, dlls/dbghelp/mscvpdb.h:
	dbghelp: MSC handling of function signature's parameters.
	- now correctly parsing parameters types for a function
	signature and storing them in dbghelp internal structures

	* dlls/dbghelp/msc.c, dlls/dbghelp/mscvpdb.h:
	dbghelp: Cleanup MSC bitfield handling.
	- no longer caching bitfield information but accessing it directly
	when needed
	- removed all kludges for bitfield handling
	- reused BOOL parameter to codeview_get_type for monitoring
	traces (will be used in later patches)

	* dlls/dbghelp/msc.c, dlls/dbghelp/mscvpdb.h:
	dbghelp: Fieldlist.
	- now that we have offset tables to type, we can cleanly
	parse the field-lists and remove the associated kludges
	- also adding internal structure for easing parameter sharing
	across functions (codeview_type_parse)
	- in mscvpdb.h, also reparated the type records that are
	referenced from other type records (union codeview_type_ref)
	from type records referenced by symbols (union codeview_type)

	* dlls/dbghelp/msc.c:
	dbghelp: MSC types.
	- enforce the type records that can be accessed by symbols (these are
	anyway the high level ones)

	* dlls/dbghelp/msc.c:
	dbghelp: Types parsing.
	- our engine for parsing types section now requires in entry
	an offsets table for getting directly to each type in the
	section
	- (re)construct this table for PDB types

	* dlls/dbghelp/msc.c, dlls/dbghelp/mscvpdb.h:
	dbghelp: CV's ssearch.
	- added definitions for start_search symbol info
	- silenced warnings from this symbol

	* dlls/dbghelp/msc.c, dlls/dbghelp/mscvpdb.h:
	dbghelp: Moved codeview structures and definitions from msc.c to mscvpdb.h.

	* dlls/dbghelp/elf_module.c, dlls/dbghelp/msc.c, dlls/dbghelp/mscvpdb.h:
	dbghelp: Compiland and source files are not the same thing.
	- in MSC debug info parsing, clearly separate a source file
	information from a compiland (including in linetab structure)
	- in ELF debug info parsing, now storing compiland directly
	in symtab_elt while browsing the symtab section (we still
	create twice the compilands, once in stabs/dwarf parsing,
	a second time in symtab parsing)

2006-03-17  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/gdi/freetype.c:
	gdi32: Look for ttf fonts in the Wine font dir.

2006-03-17  Dmitry Timoshkov <dmitry@baikal.ru>

	* dlls/gdi/tests/gdiobj.c:
	gdi: Add a test for bitmap font metrics to ensure that they match the Windows ones.

2006-03-18  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/server.c:
	widl: Do not generate code that initializes a binding handle.

	* tools/widl/client.c, tools/widl/server.c:
	widl: Fix proc offset calculation.
	A void return type is represented by a FC_END/FC_PAD sequence in the
	proc format string. Increment the proc offset by two when a function
	returns void.

	* tools/widl/parser.y:
	widl: 'unsigned char' and 'byte' are must be distinct types.

2006-03-18  Jacek Caban <jacek@codeweavers.com>

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml.idl: Added more interfaces.

	* dlls/mshtml/tests/protocol.c:
	mshtml/tests: Code cleanup.

2006-03-18  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.c, programs/winedbg/tgt_active.c:
	dbghelp: Live target detection.
	- DBGHELP_NOLIVE env variable is tested earlier to avoid
	some strange effects in live target detection
	- in WineDbg, delete DBGHELP_NOLIVE before attaching to
	a process, because we know it must be a live target

2006-03-17  Mike McCormack <mike@codeweavers.com>

	* dlls/user/tests/edit.c, programs/progman/group.c,
	  programs/progman/main.c, programs/progman/program.c,
	  programs/winecfg/audio.c:
	Remove some unnecessary uses of windowsx.h

2006-03-18  Mike McCormack <mike@codeweavers.com>

	* dlls/avifil32/avifile.c:
	avifil32: Use HeapAlloc instead of GlobalAlloc. Eliminate windowsx.h.

2006-03-17  Mike McCormack <mike@codeweavers.com>

	* programs/taskmgr/dbgchnl.c:
	taskmgr: Fix some gcc 4.1 warnings.

	* programs/winecfg/appdefaults.c:
	winecfg: Fix some gcc 4.1 warnings.

	* dlls/crypt32/tests/store.c:
	crypt32: Fix a warning.

2006-03-17  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/msvfw32/msvfw32_Ko.rc:
	msvfw32: Update Korean resources.

2006-03-17  Mike McCormack <mike@codeweavers.com>

	* programs/taskmgr/taskmgr.c:
	taskmgr: Fix some gcc 4.1 warnings.

	* programs/taskmgr/procpage.c:
	taskmgr: Fix some gcc 4.1 warnings.

	* programs/taskmgr/proclist.c:
	taskmgr: Fix some gcc 4.1 warnings.

	* programs/taskmgr/debug.c:
	taskmgr: Fix some gcc 4.1 warnings.

	* programs/taskmgr/endproc.c:
	taskmgr: Fix some gcc 4.1 warnings.

	* programs/taskmgr/affinity.c:
	taskmgr: Fix some gcc 4.1 warnings.

	* programs/regedit/treeview.c:
	regedit: Fix some gcc 4.1 warnings.

2006-03-16  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/store.c,
	  dlls/crypt32/tests/store.c, include/wincrypt.h:
	crypt32: Implement CertGetSubjectCertificateFromStore.

2006-03-16  Stefan Dösinger <stefandoesinger@gmx.at>

	* include/wine/wined3d_types.h:
	wined3d: Add D3DBASISTYPE to wined3d_types.h.

2006-03-16  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/d3d8/device.c, dlls/wined3d/device.c, dlls/wined3d/vertexshader.c:
	d3d8/wined3d: Vertex shader fixes.

2006-03-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi/freetype.c:
	gdi: Support for loading fonts from the build directory.

	* programs/winecfg/libraries.c:
	winecfg: Support for loading the list of dlls from the build directory.

	* libs/wine/loader.c:
	libwine: Added magic handling of dll path when running in build dir.
	This should ensure that we do the right thing in the build dir even if
	WINEDLLPATH isn't set.

2006-03-16  Detlef Riekenberg <wine.dev@web.de>

	* include/winbase.h:
	winbase.h: Add missing LMEM_INVALID_HANDLE define.

2006-03-16  Alexandre Julliard <julliard@winehq.org>

	* include/wine/library.h, libs/wine/config.c, libs/wine/wine.def,
	  libs/wine/wine.map:
	libwine: Export wine_get_build_dir.

	* dlls/ntdll/server.c, libs/wine/config.c:
	libwine: Added support for executing wine binaries out of the build dir.

	* libs/wine/config.c:
	libwine: Added detection for Wine being run out of the build directory.

	* dlls/Makefile.in, dlls/make_dlls:
	dlls: Remove the no longer needed symlinks to the static libraries.

	* dlls/Makedll.rules.in, dlls/Maketest.rules.in,
	  programs/Makeprog.rules.in, programs/avitools/Makefile.in:
	Remove some no longer needed library paths.

	* tools/winegcc/utils.c, tools/winegcc/winegcc.c:
	winegcc: Look for libraries in subdirs of the library path too.
	This means that -lfoo will match the library 'foo/libfoo.def' in
	addition to just 'libfoo.def'. This allows supporting the Wine source
	layout without adding a gazillion path entries.

2006-03-16  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/dispatcher.c:
	secur32: Update ntlm_auth version detection to detect new samba4 version numbers.
	Samba4 changed the versioning from 3.9.X to 4.0.0tpX-preY.

2006-03-15  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/store.c:
	crypt32: Tighten CertDuplicateCertificateContext test.
	Test that the return from CertDuplicateCertificateContext is the same
	as its parameter.

2006-03-15  Alexandre Julliard <julliard@winehq.org>

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

----------------------------------------------------------------
2006-03-15  Alexandre Julliard <julliard@winehq.org>

	* programs/avitools/Makefile.in:
	avitools: Fixed library path for msvfw32.

	* dlls/user/tests/msg.c, dlls/user/tests/win.c:
	user/tests: Try harder to flush X events before running tests.

2006-03-06  András Kovács <andras@csevego.net>

	* dlls/wininet/rsrc.rc, dlls/wininet/wininet_Hu.rc:
	wininet: Added Hungarian translation.

	* dlls/wineps/rsrc.rc, dlls/wineps/wps_Hu.rc:
	wineps: Added Hungarian translation.

	* dlls/shlwapi/shlwapi.rc, dlls/shlwapi/shlwapi_Hu.rc:
	shlwapi: Added Hungarian translation.

	* dlls/shell32/shell32_Hu.rc:
	shell32: Added Hungarian translation.

	* dlls/shdocvw/Hu.rc, dlls/shdocvw/shdocvw.rc:
	shdocvw: Added Hungarian translation.

	* dlls/setupapi/Hu.rc, dlls/setupapi/setupapi.rc:
	setupapi: Added Hungarian translation.

	* dlls/serialui/Hu.rc, dlls/serialui/serialui_rc.rc:
	serialui: Added Hungarian translation.

	* dlls/oledlg/oledlg_Hu.rc, dlls/oledlg/rsrc.rc:
	oledlg: Added Hungarian translation.

	* dlls/msvidc32/msvidc32_Hu.rc, dlls/msvidc32/rsrc.rc:
	msvidc32: Added Hungarian translation.

	* dlls/msvfw32/msvfw32_Hu.rc, dlls/msvfw32/rsrc.rc:
	msvfw32: Added Hungarian translation.

	* dlls/msrle32/msrle_Hu.rc, dlls/msrle32/rsrc.rc:
	msrle32: Added Hungarian translation.

	* dlls/msi/msi.rc, dlls/msi/msi_Hu.rc:
	msi: Added Hungarian translation.

	* dlls/mshtml/Hu.rc, dlls/mshtml/rsrc.rc:
	mshtml: Added Hungarian translation.

	* dlls/msacm/msacm.rc, dlls/msacm/msacm_Hu.rc:
	msacm: Added Hungarian translation.

	* dlls/mpr/mpr.rc, dlls/mpr/mpr_Hu.rc:
	mpr: Added Hungarian translation.

	* dlls/iccvid/iccvid_Hu.rc, dlls/iccvid/rsrc.rc:
	iccvid: Added Hungarian translation.

	* dlls/hhctrl.ocx/Hu.rc, dlls/hhctrl.ocx/hhctrl.rc:
	hhctrl.ocx: Added Hungarian translation.

	* dlls/comctl32/comctl_Hu.rc, dlls/comctl32/rsrc.rc:
	comctl32: Added Hungarian translation.

	* dlls/avifil32/avifile_Hu.rc, dlls/avifil32/rsrc.rc:
	avifil32: Added Hungarian translation.

2006-03-14  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/indexbuffer.c, dlls/d3d9/indexbuffer.c, dlls/wined3d/device.c,
	  dlls/wined3d/indexbuffer.c, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DINDEXBUFFER_DESC to wined3dtypes.h.

2006-03-15  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/tests/treeview.c:
	comctl32: Fix some gcc 4.1 warnings.

2006-03-14  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c,
	  dlls/dsound/tests/dsound.c, dlls/dsound/tests/dsound8.c:
	dsound: Add info to failed tests.
	Print format for failed SetFormat calls.

2006-03-08  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec:
	advpack: Forward OpenINFEngineA and TranslateInfStringA to their
	unicode counterparts.

2006-03-04  Aric Cyr <aric.cyr@gmail.com>

	* dlls/dplayx/dplayx_global.c:
	dplayx: Fix semaphore deadlock.
	- Make sure to release the dplayx semaphore in for error cases as well.
	- Prevent race condition between creation of the semaphore and
	grabbing of the lock by creating the semaphore in the locked state
	instead of unlocked.

2006-03-04  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/x11drv/opengl.c:
	x11drv: Fix one case of "glXChooseFBConfig returns NULL" problem.
	Using alpha bits > 8 makes this function fail, while it should not.

2006-03-01  Rein Klazes <wijn@wanadoo.nl>

	* dlls/x11drv/dib_convert.c:
	x11drv: Avoid unaligned 32 bit reads, and reads beyond the input pixel
	buffer in the convert_888_to_0888_* functions.

2006-03-15  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/msvfw32/.gitignore, dlls/msvfw32/Makefile.in,
	  dlls/msvfw32/drawdib.c, dlls/msvfw32/mciwnd.c,
	  dlls/msvfw32/msvfw32.spec, dlls/msvfw32/msvfw32_De.rc,
	  dlls/msvfw32/msvfw32_En.rc, dlls/msvfw32/msvfw32_Ko.rc,
	  dlls/msvfw32/msvfw32_No.rc, dlls/msvfw32/msvfw32_Tr.rc,
	  dlls/msvfw32/msvideo.spec, dlls/msvfw32/msvideo16.c,
	  dlls/msvfw32/msvideo_main.c, dlls/msvfw32/msvideo_private.h,
	  dlls/msvfw32/rsrc.rc, dlls/msvfw32/vfw16.h, dlls/msvideo/.gitignore,
	  dlls/msvideo/Makefile.in, dlls/msvideo/drawdib.c,
	  dlls/msvideo/mciwnd.c, dlls/msvideo/msvfw32.spec,
	  dlls/msvideo/msvfw32_De.rc, dlls/msvideo/msvfw32_En.rc,
	  dlls/msvideo/msvfw32_Ko.rc, dlls/msvideo/msvfw32_No.rc,
	  dlls/msvideo/msvfw32_Tr.rc, dlls/msvideo/msvideo.spec,
	  dlls/msvideo/msvideo16.c, dlls/msvideo/msvideo_main.c,
	  dlls/msvideo/msvideo_private.h, dlls/msvideo/rsrc.rc,
	  dlls/msvideo/vfw16.h:
	msvideo: Renamed the msvideo directory to msvfw32.

	* configure, configure.ac, dlls/Makefile.in, dlls/w32skrnl/.gitignore,
	  dlls/w32skrnl/Makefile.in, dlls/w32skrnl/w32skernel.c,
	  dlls/w32skrnl/w32skrnl.spec, dlls/w32skrnl/w32sys.c,
	  dlls/w32skrnl/w32sys.spec, dlls/w32skrnl/win32s16.c,
	  dlls/w32skrnl/win32s16.spec, dlls/win32s/.gitignore,
	  dlls/win32s/Makefile.in, dlls/win32s/w32skernel.c,
	  dlls/win32s/w32skrnl.spec, dlls/win32s/w32sys.c,
	  dlls/win32s/w32sys.spec, dlls/win32s/win32s16.c,
	  dlls/win32s/win32s16.spec:
	win32s: Renamed the win32s directory to w32skrnl.

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/winsock/.gitignore, dlls/winsock/Makefile.in,
	  dlls/winsock/async.c, dlls/winsock/protocol.c, dlls/winsock/socket.c,
	  dlls/winsock/socket16.c, dlls/winsock/tests/.gitignore,
	  dlls/winsock/tests/Makefile.in, dlls/winsock/tests/protocol.c,
	  dlls/winsock/tests/sock.c, dlls/winsock/version.rc,
	  dlls/winsock/winsock.spec, dlls/winsock/ws2_32.spec,
	  dlls/ws2_32/.gitignore, dlls/ws2_32/Makefile.in, dlls/ws2_32/async.c,
	  dlls/ws2_32/protocol.c, dlls/ws2_32/socket.c, dlls/ws2_32/socket16.c,
	  dlls/ws2_32/tests/.gitignore, dlls/ws2_32/tests/Makefile.in,
	  dlls/ws2_32/tests/protocol.c, dlls/ws2_32/tests/sock.c,
	  dlls/ws2_32/version.rc, dlls/ws2_32/winsock.spec,
	  dlls/ws2_32/ws2_32.spec, programs/winetest/Makefile.in:
	winsock: Renamed the winsock directory to ws2_32.

	* tools/Makefile.in:
	wineprefixcreate: Fixed datadir path. Added dependency on relpath.

2006-03-11  Pierre d'Herbemont <stegefin@free.fr>

	* tools/Makefile.in, tools/wineprefixcreate.in:
	wineprefixcreate: Make path searching relative.

2006-03-13  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shell32/shlexec.c:
	shell32: Add parameter formatting rule to the command line if there isn't any.

2006-03-14  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/tests/.gitignore, dlls/wininet/tests/Makefile.in,
	  dlls/wininet/tests/http.c, dlls/wininet/tests/url.c:
	wininet: Move URL-related tests to a separate file.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Make InternetCrackUrlW set the components related to net_loc
	to NULL when net_loc isn't present in the input URL.

	* dlls/wininet/cookie.c, dlls/wininet/internet.c:
	wininet: Move cookie-related stubs to cookie.c

	* dlls/wininet/internet.c, dlls/wininet/internet.h,
	  dlls/wininet/netconnection.c:
	wininet: Implement setting of send and receive timeouts.

	* dlls/kernel/thread.c, dlls/ntdll/ntdll.spec, dlls/ntdll/ntdll_misc.h,
	  dlls/ntdll/thread.c:
	ntdll: Move the call to MODULE_DllThreadAttach from the kernel32
	thread creation function to the NTDLL one.

2006-03-14  Robert Reif <reif@earthlink.net>

	* dlls/winmm/wineesd/audio.c:
	wineesd: Use pipe sync for events.
	Ues pipe sync code from OSS/ALSA rather than windows events.

2006-03-13  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/x11drv/opengl.c:
	x11drv: Prevent out of bound access in DescribePixelFormat.

	* tools/wine.inf:
	wine.inf: Increase the DirectX version to that of the latest 9.0c .

2006-03-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/ddraw/tests/d3d.c:
	ddraw: Don't crash in d3d test if OpenGL is missing.

2006-03-10  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/store.c:
	crypt32: Abstract contexts.
	- create a base cert context, and make functions unaware whether
	they're dealing with the base or derived type
	- simplify stores as a result

2006-03-11  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shlview.c:
	shell32: Fix some gcc 4.1 warnings caused by casts in macros.

2006-03-12  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c:
	wined3d: Vertexdeclaration fix.
	In the old d3d8 code SetVertexShader stored the so called vertex
	declaration in the stateblock. In case of WineD3D this isn't done
	which breaks the drawPrimitive code. This patch stores the vertex
	declaration again in the stateblock which fixes Age Of Mythology.

2006-03-11  Hans Leidekker <hans@it.vu.nl>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/lsa.c, include/ntsecapi.h:
	advapi32: Add stub implementations for a bunch of documented Lsa APIs.

2006-03-10  Christoph Frick <rid@zefix.tv>

	* dlls/dinput/joystick_linuxinput.c:
	dinput/joystick_linuxinput: Add POV detection and reporting.
	Mapping of ABS_HAT[0-3][XY] to the four POV used by dinput.

2006-03-13  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/Makefile.in, dlls/ntdll/ntdll.spec, dlls/ntdll/threadpool.c,
	  include/winternl.h:
	ntdll: Very crude implementation of RtlQueueWorkItem.

	* dlls/kernel/thread.c:
	kernel: Implement QueueUserWorkItem.

2006-03-11  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Fix the conversion of NULL component values from InternetCreateUrlA.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Host name isn't present when two slashes aren't present in InternetCrackUrl.
	The test for "about:" in InternetCrackUrlW should be more general so
	that only URLs without double slashes should also be assumed not to
	have a host name.
	Add another test for this case and remove an unreliable
	InternetCreateUrl test.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: InternetCrackUrl should set nPort to the default port if not specified.

2006-03-11  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/vertexbuffer.c, dlls/d3d9/vertexbuffer.c,
	  dlls/wined3d/vertexbuffer.c, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DVERTEXBUFFER_DESC to wined3d_types.h.

2006-03-12  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/wined3d/pixelshader.c:
	wined3d: Don't override variable that still has something we need.
	Use local temp variable instead.

	* dlls/wined3d/pixelshader.c:
	wined3d: Add D3DSIO_TEXM3x3PAD to opcode list. We already handle it where we should.

2006-03-12  Paul Vriens <Paul.Vriens@xs4all.nl>

	* tools/wine.inf:
	wine.inf: Add RegisteredOwner and Org also to WindowsNT branch.

2006-03-11  Mike McCormack <mike@codeweavers.com>

	* dlls/avifil32/avifile.c:
	avifil32: Use HeapAlloc instead of LocalAlloc.

	* dlls/avifil32/editstream.c:
	avifil32: Use HeapAlloc instead of Global/LocalAlloc.

	* dlls/avifil32/extrachunk.c:
	avifil32: Use HeapAlloc instead of Local Alloc.

	* dlls/avifil32/acmstream.c:
	avifil32: Use HeapAlloc instead of GlobalAlloc/LocalAlloc.

	* dlls/avifil32/tmpfile.c:
	avifil32: Use HeapAlloc/Free instead of LocalAlloc/Free.

	* dlls/avifil32/factory.c:
	avifil32: Use HeapAlloc instead of LocalAlloc.  Make sure to free the memory.

2006-03-10  Alexandre Julliard <julliard@winehq.org>

	* programs/winefile/winefile.c:
	winefile: Refresh the drives and files upon WM_DEVICECHANGE.

2006-03-09  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/cubetexture.c, dlls/d3d8/surface.c, dlls/d3d8/texture.c,
	  dlls/d3d8/volume.c, dlls/d3d8/volumetexture.c,
	  dlls/d3d9/cubetexture.c, dlls/d3d9/surface.c, dlls/d3d9/texture.c,
	  dlls/d3d9/volume.c, dlls/d3d9/volumetexture.c,
	  dlls/wined3d/basetexture.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/indexbuffer.c,
	  dlls/wined3d/query.c, dlls/wined3d/resource.c,
	  dlls/wined3d/surface.c, dlls/wined3d/texture.c, dlls/wined3d/utils.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Consistently use WINED3DRESOURCETYPE.

2006-03-11  Mike McCormack <mike@codeweavers.com>

	* dlls/avifil32/avifile.c, dlls/avifil32/wavfile.c:
	avifil32: Use CoTaskMemAlloc when allocating memory to return through
	an OLE interface.

	* dlls/avifil32/api.c, dlls/avifil32/avifile.c, dlls/avifil32/getframe.c,
	  dlls/avifil32/icmstream.c, dlls/avifil32/wavfile.c:
	avifil32: Fix some gcc 4.1 warnings cause by windowsx.h macros.

2006-03-10  Mike McCormack <mike@codeweavers.com>

	* dlls/commdlg/colordlg.c:
	comdlg32: Remove the property when destroy the dialog box.

2006-03-09  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/proplist.c, dlls/crypt32/store.c:
	crypt32: Move context properties to a separate file.

2006-03-09  Robert Reif <reif@earthlink.net>

	* dlls/winmm/wineesd/audio.c:
	wineesd: Update ESD driver to closer match OSS and ALSA drivers.

2006-03-10  Petr Tesarik <hat@tesarici.cz>

	* programs/winedbg/be_i386.c:
	winedbg: Fix lcall instruction opcode.

2006-03-10  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Don't duplicate empty strings.

2006-03-10  Fatih Asici <fasici@linux-sevenler.org>

	* programs/wordpad/Tr.rc, programs/wordpad/rsrc.rc:
	wordpad: Add Turkish resource file.

	* programs/winecfg/Tr.rc:
	winecfg: Update Turkish resource file.

2006-03-09  Fatih Aşıcı <fasici@linux-sevenler.org>

	* documentation/README.tr:
	documentation: Turkish translation of README file.

2006-03-10  Alexandre Julliard <julliard@winehq.org>

	* aclocal.m4, configure:
	aclocal.m4: Avoid invalid characters in the cache variable name in WINE_GET_SONAME.

2006-03-10  Mike McCormack <mike@codeweavers.com>

	* dlls/commdlg/colordlg.c:
	comdlg32: Use a property for the color dialog's information.

2006-03-09  Alexandre Julliard <julliard@winehq.org>

	* include/dbt.h:
	dbt.h: Added DBTF_ flags.

	* dlls/user/message.c:
	user: Support packing/unpacking the WM_DEVICECHANGE message.

2006-03-09  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/cookie.c, dlls/wininet/tests/internet.c:
	wininet: Fix InternetGetCookie with no matching cookies.
	Return FALSE and an error of ERROR_NO_MORE_ITEMS from
	InternetGetCookie when there are no cookies for the specified
	domain. This fixes a bug in sending a blank cookie to HTTP servers.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Fix an off-by-one error in InternetCreateUrlW.
	Fix an off-by-one error in the size of buffer used to store the port
	number in InternetCreateUrlW.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Further InternetCreateFileW fixes.
	- Add the slash after the port number.
	- Only add the port number if the host name is present.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: If necessary, add a slash between the hostname and path in
	InternetCreateUrlW.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: More InternetCreateUrlW fixes.
	- Don't add double slashes for opaque URLs.
	- The default port number for all other schemes is 0.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Parse the scheme the string in InternetCreateFileW.
	Parse the scheme the string in InternetCreateFileW and rewrite
	url_uses_default_port using schemes instead of strings.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Get the string for the scheme if specified only by the
	INTERNET_SCHEME enumeration in InternetCreateUrlW.

	* dlls/wininet/internet.c:
	wininet: The host name is optional in InternetCreateUrlW.

	* dlls/wininet/internet.c:
	wininet: Use an array of schemes for mapping from a string to an INTERNET_SCHEME.
	Use an array of schemes so that it can be re-used for mapping from
	INTERNET_SCHEME back to a string and simplify the code in
	GetInternetSchemeW.

	* dlls/wininet/internet.c:
	wininet: Fix Trace in InternetCreateUrl.
	The url passed in to InternetCreateUrl is an out parameter, so don't
	dump it.

	* dlls/wininet/http.c:
	wininet: Fix redirects with relative URIs instead of absolute URIs.

2006-03-09  Christoph Frick <rid@zefix.tv>

	* dlls/dinput/joystick_linuxinput.c:
	dinput/linuxinput: Fix handling of DIPH_BYID.
	- handling of DIPH_BYID
	- use regular id and not shifted one also for axes
	- may only Acquire after SetDataFormat

2006-03-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi: Load system fonts from $(datadir)/wine/fonts if loading from
	%windir%\fonts has failed.

	* dlls/gdi/enhmfdrv/objects.c, dlls/gdi/mfdrv/objects.c,
	  dlls/wineps/pen.c, dlls/x11drv/pen.c:
	gdi: A better workaround for extended user style pens.

2006-03-08  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Use OpenGL fragment programs when available.

	* dlls/wined3d/drawprim.c:
	wined3d: Remove an incorrect FIXME.

	* dlls/wined3d/vertexshader.c:
	wined3d: Enable color fixups for vertex shaders.

	* dlls/wined3d/vertexshader.c:
	wined3d: Minor vshader_program_add_param cleanup.
	- In vshader_program_add_param, pass a pointer to the shader object
	instead of individual parameters.
	- In vshader_program_add_param, rename input to is_input to make it
	clearer what the parameter does.
	- Fix a typo & cleanup a comment.

2006-03-08  Francois Gouget <fgouget@codeweavers.com>

	* dlls/oleaut32/olepicture.c:
	oleaut32: Reorder a few functions to avoid forward declaractions.

2006-03-09  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d9/swapchain.c, dlls/wined3d/swapchain.c,
	  include/wine/wined3d_interface.h:
	wined3d: Use WINED3DPRESENT_PARAMETERS in IWineD3DSwapChain::GetPresentParameters.

2006-03-09  Mike McCormack <mike@codeweavers.com>

	* dlls/user/listbox.c, dlls/user/tests/listbox.c:
	user: The height of a ListBox item can be no more than MAXBYTE.

	* dlls/msi/action.c:
	msi: Remove some unnecessary indent.

	* dlls/msi/tests/package.c:
	msi: Make sure to run tests for MsiEvaluateCondition.

2006-03-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlelem.c:
	mshtml: Added beginning of getAttribute implementation.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlbody.c, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl:
	mshtml: Added IHTMLBodyElement implementation.

2006-03-07  Huw Davies <huw@codeweavers.com>

	* configure, configure.ac, dlls/opengl32/opengl32.spec,
	  dlls/opengl32/wgl.c, include/config.h.in:
	opengl32: Implement wglUseFontOutlines.

2006-03-07  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec:
	crypt32: Implement CertGetValidUsages.

2006-03-08  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/surface.c,
	  dlls/wined3d/volume.c, include/wine/wined3d_types.h:
	wined3d: Add D3DLOCK_* types to wined3d_types.h.

2006-03-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmltextarea.c:
	mshtml: Added get_name and get_value implementation of IHTMLTextAreaElement interface.

	* dlls/mshtml/htmlselect.c:
	mshtml: Added get_name and get_value implementation of IHTMLSelectElement interface.

	* dlls/mshtml/htmlinput.c:
	mshtml: Added get_type, get_value, get_name and get_checked
	implementation of IHTMLInputElement interface.

2006-03-07  Peter Åstrand <astrand@cendio.se>

	* dlls/comctl32/listview.c:
	comctl32: LISTVIEW_InsertItemT should accept iItem < 0, when using sorted lists.

2006-03-07  Hans Leidekker <hans@it.vu.nl>

	* dlls/mscms/tests/profile.c:
	mscms: Add tests for EnumColorProfiles{A,W}.

	* dlls/mscms/profile.c, dlls/mscms/stub.c, include/icm.h:
	mscms: Implement EnumColorProfiles{A,W}.

2006-03-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* fonts/Makefile.in:
	fonts: Install fonts in $(datadir)/wine/fonts.

2006-03-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/Makeimplib.rules.in:
	dlls: Added a default install-lib rule for dlls that don't have one.

2006-03-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/desktop.c:
	x11drv: Don't send an invalid WM_NCCREATE to the desktop window.

	* server/trace.c:
	server: Fixed length check in dump_inline_unicode_string.

	* dlls/shell32/systray.c, programs/explorer/desktop.c,
	  programs/explorer/explorer.c, programs/explorer/explorer_private.h,
	  programs/explorer/systray.c, programs/explorer/systray.h:
	explorer: Merged systray support with the desktop window main loop.
	Systray is now always available as part of the desktop and doesn't
	need to be started from shell32.

	* dlls/user/win.c, dlls/x11drv/winpos.c, include/wine/server_protocol.h,
	  server/protocol.def, server/trace.c, server/window.c:
	user: Launch explorer to manage the desktop window.

	* programs/explorer/Makefile.in, programs/explorer/desktop.c,
	  programs/explorer/explorer.c, programs/explorer/explorer_private.h:
	explorer: Added desktop option.
	The /desktop option causes explorer to create and manage the desktop
	window.

2006-03-07  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/actctx.c:
	kernel: Improve the activation context stubs.

2006-03-06  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c:
	wined3d: Fix a few FIXME's.

	* dlls/wined3d/device.c:
	wined3d: Implement GetCreationParameters (from a patch by Al Tobey).

2006-03-06  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/basetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/surface.c, dlls/wined3d/utils.c,
	  include/wine/wined3d_types.h:
	wined3d: Define D3D usage flags in wined3d_types.h.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/surface.c,
	  include/wine/wined3d_types.h:
	wined3d: Add device caps to wined3d_types.h.

2006-03-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmltextarea.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsiface.idl:
	mshtml: Added IHTMLTextAreaElement implementation.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmlselect.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsiface.idl:
	mshtml: Added IHTMLSelectElement implementation.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmlinput.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsiface.idl:
	mshtml: Added IHTMLInputElement implementation.

	* dlls/mshtml/htmlelem.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl:
	mshtml: Added IHTMLElementCollection::tags implementation.

2006-03-06  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/store.c:
	crypt32: Simplify stores.
	Ref count cert context references, and eliminate the DupCert function
	from stores.

2006-03-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c:
	kernel: Better support for detached processes.
	Call setsid() in the new process to create a new Unix process group
	when CREATE_NEW_PROCESS_GROUP, CREATE_NEW_CONSOLE, or DETACHED_PROCESS
	are specified.

	* dlls/x11drv/window.c, dlls/x11drv/winpos.c:
	x11drv: Make sure to never manipulate the root window, even if we own
	the desktop window.

	* server/process.c, server/user.h, server/window.c, server/winstation.c:
	server: Support for closing the desktop window.
	If a thread is owning the desktop window, when all other users of the
	desktop have exited, signal the owner to close the desktop (with a 1
	second delay).

	* server/object.c, server/object.h:
	server: Added unlink_named_object function.
	Allows to remove the name of an object while keeping around the object
	itself.

	* server/class.c, server/user.h, server/window.c:
	server: Infrastructure for having a thread own the desktop window.

	* dlls/mlang/mlang.c:
	mlang: Decrement the module refcount when an object is destroyed.

2006-03-06  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/volume.c, dlls/d3d9/volume.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c, include/wine/wined3d_interface.h:
	wined3d: Fix the relation between volumes and their container.

	* dlls/d3d8/surface.c, dlls/d3d9/surface.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/texture.c,
	  include/wine/wined3d_interface.h:
	wined3d: Fix the relation between surfaces and their container.

	* dlls/wined3d/surface.c:
	wined3d: Don't call glCompressedTexImage2DARB without allocatedMemory.
	Don't call glCompressedTexImage2DARB if we haven't got allocatedMemory (yet).
	Fix a small typo.

2006-03-06  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Rewrite InternetCreateUrlW.
	- Rewrite InternetCreateUrlW to respect the lengths passed in via the
	URL_COMPONENTS structure and fall back to a strlenW call when a
	length is zero.
	- Expand the number of protocols supported when determining whether
	the port number should be added.
	- Fix a test by passing in the correct length of scheme.

	* dlls/wininet/http.c, dlls/wininet/internet.h,
	  dlls/wininet/netconnection.c:
	wininet: Don't continue to connect to a secure server without SSL support since it won't work.
	Don't continue to connect to a secure server without SSL support since
	it won't work. Return an error back to the application instead.

	* dlls/wininet/tests/http.c:
	wininet: More tests for InternetCreateUrl.
	Fix an InternetCreateUrl test so that it correctly sets the scheme
	length and add tests which show the behaviour when the lengths are set
	to zero and when the https scheme is used.

2006-03-06  Victor Pelt <victor.pelt@gmail.com>

	* dlls/wininet/internet.c:
	wininet: Add stub for missing InternetSetOption.

2006-03-06  Alexandre Julliard <julliard@winehq.org>

	* include/wine/library.h, libs/wine/Makefile.in, libs/wine/config.c,
	  libs/wine/wine.def, libs/wine/wine.map:
	libwine: Export a function to retrieve the data directory (based on a
	patch by Dmitry Timoshkov).

2006-03-06  Francois Gouget <fgouget@free.fr>

	* dlls/mshtml/main.c, dlls/urlmon/regsvr.c:
	Fix compatibility with native advpack dlls.
	Most native advpack dlls in circulation don't have RegInstallA. So
	mshtml and urlmon should do a GetProcAddress() on 'RegInstall'
	instead.

2006-03-06  Mike McCormack <mike@codeweavers.com>

	* tools/wrc/parser.l:
	wrc: Don't use identifiers starting yy*, they're reserved for flex.

	* dlls/avifil32/editstream.c:
	avifil32: Fix some more gcc 4.1 warnings caused by windowsx.h macros.

2006-03-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/navigate.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Added get_LocationURL implementation.

2006-03-05  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlelem.c, dlls/mshtml/htmlnode.c:
	mshtml: Added IHTMLElementCollection implementation.
	- Added IHTMLElementCollection implementation.
	- Added get_all implementation.

2006-03-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/shlfileop.c:
	shell32: Grow the file list dynamically in SHFileOperation.
	This avoids searching the same directories twice, once to count the
	files and then once for real.

	* dlls/shell32/shlfileop.c:
	shell32: Store only the file attributes in the file list for SHFileOperation.
	We don't need the rest of the WIN32_FIND_DATA structure.

	* dlls/shell32/shlfileop.c:
	shell32: Fixed handling of null-terminated file list in SHFileOperation.

2006-03-03  Aric Stewart <aric@codeweavers.com>

	* dlls/shell32/shlfileop.c:
	shell32: Skip dot directories in SHFileOperation.
	In ShFileOperation when generating a file list with * wildcards, for
	example for deletion, do not include the dot directories (. and ..) in
	the list, because that cause the operation to spiral out of control.

2006-03-06  Alexandre Julliard <julliard@winehq.org>

	* server/winstation.c:
	server: Avoid crash in set_thread_desktop if the thread doesn't have a queue.

	* dlls/user/win.c, include/wine/server_protocol.h, server/protocol.def,
	  server/trace.c, server/window.c:
	server: Return real parent and owner in the create_window request.
	Remove computing of parent and owner handles on the client side.

	* dlls/user/desktop.c:
	user: Allow creating windows of the desktop class.

	* dlls/user/message.c:
	user: Allow some Wine internal messages to act on the desktop window.

2006-03-05  Mike McCormack <mike@codeweavers.com>

	* dlls/mpr/mpr.spec, dlls/mpr/nps.c:
	mpr: Stub implementations of some mpr functions.

2006-03-05  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shellfolder.h, dlls/shell32/shfldr_fs.c,
	  dlls/shell32/shfldr_unixfs.c, dlls/shell32/shv_bg_cmenu.c:
	shell32: Unicode'ify ISFHelper interface.

2006-03-05  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/wined3d/directx.c:
	wined3d: Fix retrieval of driver adapter versions.

2006-03-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/msc.c, dlls/dbghelp/stabs.c, dlls/dbghelp/type.c:
	dbghelp: Added type for array index.
	- added type for array index
	- correctly parsing array index type in stabs, Dwarf2 and MSC formats
	- fixed SyGetTypeInfo accordingly

	* dlls/msvcrt/tests/cpp.c, dlls/msvcrt/undname.c:
	msvcrt: Some more fixes to name demangling.

	* dlls/dbghelp/type.c:
	dbghelp: Implemented TI_GET_COUNT in SymGetTypeInfo for function.

2006-03-05  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/directx.c, include/wine/wined3d_types.h:
	wined3d: Add d3d7 and d3d8/9 cap flags to wined3d_types.h.

2006-03-05  Jason Green <jave27@gmail.com>

	* dlls/wined3d/utils.c:
	wined3d: Add a few more WINED3DFMT formats to be recognized.

2006-03-05  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/dochost.c:
	shdocvw: Beginning ShowContextMenu implementation.

	* dlls/mshtml/htmldoc3.c, dlls/mshtml/nsiface.idl:
	mshtml: Added get_documentElement implementation.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlelem.c, dlls/mshtml/htmlnode.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl:
	mshtml: Added IHTMLElement implementation.

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml: Added more interfaces to mshtml.idl.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmldoc.c, dlls/mshtml/htmlnode.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl:
	mshtml: Added IHTMLDOMNode implementation.

2006-03-05  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  include/wine/wined3d_gl.h:
	wined3d: Added OpenGL 2.0 function definitions.

2006-03-05  Robert Shearman <rob@codeweavers.com>

	* programs/wcmd/wcmdmain.c:
	wcmd: Improve command line processing.
	Make the command line processing more robust by continuing to process
	command line options if an unknown one is detected and remove the
	skipping of argv[0], which is no longer necessary. This fixes the
	parsing when argv[0] isn't set to the program name.

	* dlls/oleaut32/oleaut32.spec, dlls/oleaut32/vartype.c:
	oleaut: Implement VarBstrFromDisp.

	* dlls/oleaut32/tests/vartest.c, dlls/oleaut32/varformat.c:
	oleaut: Fix VarFormat for VT_NULL variants.

	* dlls/ole32/compobj_private.h, dlls/ole32/marshal.c, dlls/ole32/rpc.c:
	ole: Implement IRpcChannelBuffer::GetDestCtx on the client side.

	* dlls/ole32/compobj_private.h, dlls/ole32/marshal.c:
	ole: Store the destination context and the destination context data in
	the proxy manager when unmarshaling.

	* include/olectl.h:
	include: Add more definitions and types to olectl.h.

	* dlls/oleaut32/tests/vartest.c:
	oleaut: Add some more VarFormat tests and fix the VarMod decimal test.

	* dlls/oleaut32/olepicture.c:
	oleaut: Split OLEPictureImpl_Load.
	Split OLEPictureImpl_Load into separate functions for the different file
	types.

2006-03-05  Mike McCormack <mike@codeweavers.com>

	* programs/winecfg/audio.c:
	winecfg: Fix a typo (LVM_ -> TVM_).

2006-03-01  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/wined3d/device.c:
	wined3d: Implemented WINED3DRS_DEPTHBIAS.

2006-03-04  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/wined3d/device.c:
	wined3d: Added two sided stencil support to WINED3DRS_STENCILFUNC.

	* dlls/wined3d/device.c:
	wined3d: Added two sided stencil support to WINED3DRS_STENCILFAIL,
	WINED3DRS_STENCILZFAIL and WINED3DRS_STENCILPASS.

	* dlls/wined3d/device.c:
	wined3d: Implemented fallback for separate stencil function in WINED3DRS_CCW_STENCILFUNC.

	* dlls/wined3d/device.c, include/wine/wined3d_gl.h:
	wined3d: Implemented fallback for separate stencil operation in WINED3DRS_CCW_STENCIL*.

2006-03-03  Detlef Riekenberg <wine.dev@web.de>

	* dlls/wined3d/device.c:
	wined3d: Fix cut&paste typo.

2006-03-03  Stefan Dösinger <stefandoesinger@gmx.at>

	* include/wine/wined3d_types.h:
	wined3d: Add D3D7 texture stage types.

	* include/wine/wined3d_types.h:
	wined3d: Add D3D7 render states.

2006-03-04  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/winebrowser/main.c:
	winebrowser: Use CP_UNIXCP when translating URL passed on command line
	to unicode.

2006-03-04  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/user/sysparams.c:
	user32: Fix the default height for CJK fonts.

2006-03-04  Mike McCormack <mike@codeweavers.com>

	* dlls/avifil32/acmstream.c:
	avifil32: Eliminate some gcc 4.1 warnings caused by windowsx.h macros.

2006-03-03  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/serialize.c, dlls/crypt32/store.c:
	crypt32: Move serialization functions to serialize.c.

2006-03-03  Christian Gmeiner <christian.gmeiner@students.fh-vorarlberg.ac.at>

	* dlls/mlang/mlang.c:
	mlang: Implement DllCanUnloadNow.

2006-03-02  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/tests/bitmap.c, dlls/x11drv/dib.c, dlls/x11drv/palette.c,
	  dlls/x11drv/x11drv.h:
	gdi: Better support for 1bpp dib sections.

2006-03-03  Mike McCormack <mike@codeweavers.com>

	* programs/regedit/childwnd.c, programs/regedit/framewnd.c,
	  programs/regedit/listview.c:
	regedit: Fix some gcc 4.1 warnings caused by casts in macros.

	* programs/winecfg/audio.c:
	winecfg: Eliminate some gcc 4.1 warnings caused by casts in macros.

	* dlls/shell32/brsfolder.c:
	shell32: Fix some gcc 4.1 warnings caused by casts in macros.

	* dlls/msrle32/msrle32.c:
	msrle32: Fix some gcc 4.1 warnings caused by casts in windowsx.h macros.

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Fix a gcc 4.1 warning caused by a cast in a macro.

	* dlls/comctl32/listview.c, dlls/comctl32/pager.c:
	comctl32: Fix some gcc 4.1 warnings caused by windowsx.h macros.

2006-03-02  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/store.c, include/wincrypt.h:
	crypt32: Implement CertDuplicateStore.

2006-03-02  Francois Gouget <fgouget@free.fr>

	* dlls/d3d8/d3d8_main.c, dlls/d3d9/d3d9_main.c:
	d3d: Fix Validate(Pixel|Vertex)Shader() prototypes.
	Fix Validate(Pixel|Vertex)Shader() prototypes so they match the spec file.
	Fix the stub message so it is more standard and use consistent
	parameter names.

	* dlls/kernel/heap.c:
	kernel: Protect sys/resource.h include.

2006-03-02  Alexandre Julliard <julliard@winehq.org>

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

----------------------------------------------------------------
2006-03-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/dxdiagn/container.c, dlls/ole32/ole2.c, dlls/ole32/oleobj.c,
	  dlls/riched20/editor.c, dlls/riched20/tests/editor.c,
	  dlls/shell32/tests/shlfolder.c, include/ddk/wdm.h, server/change.c:
	Fixed some compiler warnings on old gcc versions.

	* dlls/Makefile.in, dlls/make_dlls:
	dlls: Remove 16-bit files on make clean.

2006-03-02  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, include/wine/wined3d_gl.h:
	wined3d: Opengl 2.x compile fix.

2006-03-01  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/user/menu.c:
	user: Fix uninitialized rectangle in menu arrow painting.

2006-03-01  Mike McCormack <mike@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Add a default RelayExclude.

2006-03-01  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/winedbg.c, programs/winedbg/winedbg.man.in:
	winedbg: Bring usage() and .man up to date.

	* programs/winedbg/debugger.h, programs/winedbg/stack.c,
	  programs/winedbg/tgt_minidump.c, programs/winedbg/winedbg.c:
	winedbg: Add ability to reload a minidump.
	- now recognize winedbg foo.mdmp on command line
	- fleshed out tgt_minidump to reload information from minidump

	* programs/winedbg/debugger.h, programs/winedbg/gdbproxy.c,
	  programs/winedbg/tgt_active.c, programs/winedbg/winedbg.c:
	winedbg: process_io
	- added ability to specify process_io at process creation/attachment
	time
	- created a process_io structure for gdbproxy

	* programs/winedbg/debugger.h, programs/winedbg/tgt_active.c,
	  programs/winedbg/winedbg.c:
	winedbg: main_loop.
	- split dbg_main_loop in two parts (one for finishing the debuggee
	attachment, the second one really for handling the main loop)
	- removed now longer needed dbg_main_loop

2006-03-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/navigate.c:
	shdocvw: Don't call hlink_navigate if HLNF_OPENINNEWWINDOW is set.
	- Don't call hlink_navigate if HLNF_OPENINNEWWINDOW is set.
	- Remove unneeded call to GetBindInfo.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/navigate.c, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c, dlls/mshtml/nsservice.c:
	mshtml: Beginning support for links opened in a new frame.

	* dlls/mshtml/nsembed.c:
	mshtml: Use NSContainer as 'This' of its window.

2006-02-24  Gerold J. Wucherpfennig <gjwucherpfennig@gmx.net>

	* dlls/cabinet/cabinet.h, dlls/cabinet/fci.c:
	cabinet: Set proper error information on failures.

2006-03-01  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/menu.c, dlls/user/tests/menu.c:
	user32: Fix handling of '\b' right flush character in menus.
	- do not add extra space; modify the tests to confirm this;
	- right flush to the menu tab stop, not to the menu border;
	- small fixes to the menu tab stop calculation.

2006-03-01  Brandon Woodmansee <wood@socal.rr.com>

	* dlls/riched20/editor.c, dlls/riched20/editor.h, dlls/riched20/editstr.h,
	  dlls/riched20/tests/editor.c:
	riched20: Implement EM_AUTOURLDETECT & EM_GETAUTOURLDETECT.

2006-03-01  Jeremy White <jwhite@codeweavers.com>

	* dlls/crypt32/tests/oid.c:
	crypt32: More gcc 2.95 adjustments.

2006-03-02  Aric Cyr <aric.cyr@gmail.com>

	* dlls/wined3d/utils.c:
	wined3d: Reverse GL_BGR to GL_RGB for the D3D RGB formats.
	This fixes texture colours in many D3D games (verified with Age Of Mythology).

2006-03-01  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/marshal.c, dlls/ole32/stubmanager.c:
	ole: Change NORMALEXTREFS to 5, like it is in native.

	* dlls/ole32/marshal.c, dlls/ole32/tests/marshal.c:
	ole: Fix marshaling of proxies for interfaces that haven't already been unmarshaled.

	* dlls/oleaut32/connpt.c:
	oleaut: Use IsEqualIID in connpt.c instead of memcmp for comparing IIDs.

	* dlls/rpcrt4/ndr_stubless.c, include/Makefile.in, include/ndrtypes.h:
	rpcrt4: Change the stubless parameter attributes to using a bitfield
	(as defined by the PSDK) so the ServerAllocSize part is easier to
	calculate.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement marshaling and unmarshaling for enum types.

2006-03-01  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/store.c:
	crypt32: Use CertFindCertificateInStore to simplify adding certificates.

2006-03-01  Jon Parshall <jparshall@codeweavers.com>

	* dlls/shell32/shres.rc:
	shell32: New icons for Desktop and My Computer.

2006-03-01  Jason Edmeades <us@edmeades.me.uk>

	* dlls/user/menu.c:
	user32: Ensure VK_UP displays the popup menu for the selected item if
	the popup menu is not visible

2006-03-01  Marcus Meissner <marcus@jet.franken.de>

	* documentation/PACKAGING:
	PACKAGING: Mention more libraries / tools in the needed dependencies section.

2006-02-28  Gerald Pfeifer <gerald@pfeifer.com>

	* README:
	README: Fix spelling Red Hat.  Remove unneeded references to Debian
	and Red Hat.  Document the use of libxml2 as a weak prerequisite.

2006-03-01  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, include/config.h.in, server/signal.c:
	server: Print a message if wineserver crashes and we don't dump cores.

2006-02-25  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/x11drv/settings.c:
	x11drv: Convert 24-bit into 32-bit color before looking for an
	available screen resolution. We do this during enumeration, so there
	would be no 24-bit modes available.

2006-02-28  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/store.c:
	crypt32: Eliminate an unnecessary function pointer from stores.

2006-02-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/notepad/main.c:
	notepad: Wrap long lines by default like Windows does.

2006-02-27  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/comm.c:
	kernel32: Implemented ClearCommError on top of GET_COMM_STATUS ioctl.

	* dlls/ntdll/serial.c:
	ntdll: Implemented serial IOCTL for status: GET_COMM_STATUS.

2006-02-28  Alexandre Julliard <julliard@winehq.org>

	* tools/wrc/parser.y:
	wrc: Integer ids can be used for control labels instead of strings.

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/winnls/.gitignore, dlls/winnls/Makefile.in,
	  dlls/winnls/winnls.c, dlls/winnls/winnls.spec,
	  dlls/winnls/winnls32.spec, dlls/winnls32/.gitignore,
	  dlls/winnls32/Makefile.in, dlls/winnls32/winnls.c,
	  dlls/winnls32/winnls.spec, dlls/winnls32/winnls32.spec:
	winnls32: Renamed the winnls directory to winnls32.

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/winaspi/.gitignore, dlls/winaspi/Makefile.in,
	  dlls/winaspi/aspi.c, dlls/winaspi/aspi.h, dlls/winaspi/winaspi.spec,
	  dlls/winaspi/winaspi16.c, dlls/winaspi/winaspi32.c,
	  dlls/winaspi/winescsi.h, dlls/winaspi/wnaspi32.spec,
	  dlls/wnaspi32/.gitignore, dlls/wnaspi32/Makefile.in,
	  dlls/wnaspi32/aspi.c, dlls/wnaspi32/aspi.h,
	  dlls/wnaspi32/winaspi.spec, dlls/wnaspi32/winaspi16.c,
	  dlls/wnaspi32/winaspi32.c, dlls/wnaspi32/winescsi.h,
	  dlls/wnaspi32/wnaspi32.spec:
	wnaspi32: Renamed the winaspi directory to wnaspi32.

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/lz32/.gitignore, dlls/lz32/Makefile.in, dlls/lz32/lz32.spec,
	  dlls/lz32/lzexpand.spec, dlls/lz32/lzexpand16.c,
	  dlls/lz32/lzexpand_main.c, dlls/lz32/tests/.gitignore,
	  dlls/lz32/tests/Makefile.in, dlls/lz32/tests/lzexpand_main.c,
	  dlls/lzexpand/.gitignore, dlls/lzexpand/Makefile.in,
	  dlls/lzexpand/lz32.spec, dlls/lzexpand/lzexpand.spec,
	  dlls/lzexpand/lzexpand16.c, dlls/lzexpand/lzexpand_main.c,
	  dlls/lzexpand/tests/.gitignore, dlls/lzexpand/tests/Makefile.in,
	  dlls/lzexpand/tests/lzexpand_main.c, programs/winetest/Makefile.in:
	lz32: Renamed lzexpand directory to lz32.

	* dlls/ntdll/loader.c:
	ntdll: Don't reset the load count when reusing a builtin modref.

2006-02-23  Detlef Riekenberg <wine.dev@web.de>

	* tools/wine.inf:
	wine.inf: Add printing section for local port monitor.

2006-02-27  Robert Reif <reif@earthlink.net>

	* dlls/dsound/duplex.c:
	dsound: Fix duplex create bug.

2006-02-21  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/dinput/mouse.c:
	dinput: Return an error if both DISCL_EXCLUSIVE and DISCL_BACKGROUND are set.

2006-02-26  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/wined3d/device.c:
	wined3d: Implemented WINED3DRS_CCW_STENCIL* render states.

2006-02-25  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/wined3d/device.c:
	wined3d: Implemented WINED3DRS_SCISSORTESTENABLE.

	* dlls/wined3d/device.c:
	wined3d: Implemented WINED3DRS_SLOPESCALEDEPTHBIAS.

	* dlls/wined3d/device.c:
	wined3d: Implemented WINED3DRS_ANTIALIASEDLINEENABLE.

	* dlls/wined3d/device.c:
	wined3d: Added D3D9 render states.

	* dlls/wined3d/device.c:
	wined3d: Fixed some typos and prevented divide by 0.

2006-02-27  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/crypt32/oid.c, dlls/crypt32/store.c:
	crypt32: Don't access a blob after freeing it.

	* programs/winedbg/dbg.y, programs/winedbg/debugger.h,
	  programs/winedbg/stack.c, programs/winedbg/tgt_active.c,
	  programs/winedbg/winedbg.c:
	winedbg: Added a close_process method to process_io.
	- added a close_process method to process_io
	- made use of it to get rid of dbg_detach

	* programs/winedbg/tgt_active.c, programs/winedbg/winedbg.c:
	winedbg: Extend auto mode with minidump.
	- added -minidump and -minidump <file> options to command line
	Those options are to be used in remplacement of --auto to create a minidump
	In the form --minidump <file>, the minidump will be created in <file>,
	otherwise the filename will be automatically generated.

	* programs/winedbg/dbg.y, programs/winedbg/debug.l,
	  programs/winedbg/debugger.h, programs/winedbg/tgt_active.c,
	  programs/winedbg/winedbg.c:
	winedbg: Rewrite auto mode.
	- rewrote auto mode as a specific set of commands to be run in
	regular parser, instead of hard coding those commands
	- added a new function to store a set of commands to be executed
	in a file
	- added 'echo' command to the parser functions
	- got rid of dbg_action_mode
	- added support of '--' on command line

	* programs/winedbg/gdbproxy.c:
	winedbg: Fixed regression in gdb handling.

2006-02-27  James Hawkins <truiken@gmail.com>

	* dlls/advpack/tests/advpack.c:
	advpack: Factor out loading the program files directory.

	* dlls/advpack/advpack.c, dlls/advpack/tests/advpack.c:
	advpack: Add tests for the TranslateInfStringEx trio of functions and
	fix the errors.

	* dlls/advpack/tests/advpack.c:
	advpack: Factor out the API loading of advpack tests.

2006-02-27  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/oid.c:
	crypt32: Correct compile problem on gcc 2.95.

2006-02-28  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/crypt32/crypt32.rc, dlls/crypt32/crypt32_Ko.rc:
	crypt32: Add Korean translation.

2006-02-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msvcrt/locale.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Add a stub for _wsetlocale.

2006-02-27  Kovács András <andras@csevego.net>

	* programs/winecfg/Hu.rc, programs/winecfg/winecfg.rc:
	winecfg: New Hungarian language resource.

2006-02-27  Francois Gouget <fgouget@free.fr>

	* dlls/d3d8/device.c, dlls/d3d8/directx.c:
	d3d8: Remove spaces before '\n'.

2006-02-27  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/d3dcore_gl.h:
	d3d8: Header cleanup.
	Remove unneeded structures and functions from d3d8_private.h, clean
	some datatypes up and remove d3dcore_gl.h.

2006-02-27  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl:
	mshtml: Added nsIInterfaceRequestor implementation.

2006-02-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsservice.c:
	mshtml: Improve ConfirmEx hack.

2006-02-24  Francois Gouget <fgouget@free.fr>

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec, dlls/advpack/files.c,
	  dlls/advpack/install.c, dlls/advpack/reg.c, dlls/mshtml/main.c,
	  dlls/urlmon/regsvr.c, include/advpub.h, tools/winapi/win32.api:
	advpack: Prepare the unicodification of advpack.dll.
	All functions that manipulate strings should have an Ansi and a
	Unicode variant.
	Forward the unqualified dll entry points to the Ansi variant for
	backward compatibility.
	We're not allowed to use unqualified entry points in Wine, so change
	RegInstall() calls to RegInstallA().
	Update win32.api.

2006-02-24  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/debugger.h, programs/winedbg/tgt_active.c,
	  programs/winedbg/winedbg.c:
	winedbg: Auto mode.
	- rewrite auto mode startup
	- move part of auto handling to tgt_active.c

	* programs/winedbg/debugger.h, programs/winedbg/gdbproxy.c,
	  programs/winedbg/winedbg.c:
	winedbg: Move gdb command line handling.
	- moves gdb command line handling to gdbproxy.c
	- using manifest constants to make code more readable

	* programs/winedbg/debugger.h, programs/winedbg/tgt_active.c,
	  programs/winedbg/winedbg.c:
	winedbg: Active and command line.
	- move process attachment and process creation (related to command
	line handling) from winedbg.c to tgt_active.c
	- tidy up argument parsing

	* programs/winedbg/be_alpha.c, programs/winedbg/be_cpu.h,
	  programs/winedbg/be_i386.c, programs/winedbg/be_ppc.c,
	  programs/winedbg/debugger.h:
	winedbg: Cleanup the process_io usage.
	- made be_process_io references 'const'
	- make use of it for dbg_read_memory and dbg_write_memory

	* programs/winedbg/debugger.h, programs/winedbg/tgt_active.c,
	  programs/winedbg/winedbg.c:
	winedbg: Active targets
	Move all code related to an 'active' target (ie a running process)
	from winedbg.c to tgt_active.c.

	* dlls/kernel/comm.c, dlls/kernel/tests/comm.c,
	  include/wine/server_protocol.h, server/protocol.def, server/serial.c,
	  server/trace.c:
	kernel32: ClearCommError.
	ClearCommError should only deal with *communication* errors (are being
	seen on the serial interface) rather than API errors (which can be
	reported to the caller by the API itself).  I then removed all the
	stuff related to storing the error status in the server object.

2006-02-24  Andrew de los Reyes <adlr@ucla.edu>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Implement EM_SCROLL and its tests.

2006-02-24  Hamza Lakhani <hlakhani@gmail.com>

	* dlls/riched20/editor.c, dlls/riched20/editstr.h, dlls/riched20/paint.c:
	riched20: EM_HIDESELECTION implementation.

2006-02-25  Peter Beutner <p.beutner@gmx.net>

	* dlls/ddraw/surface_dib.c:
	ddraw: Fix transparent Blits on 8bit surfaces.
	There are no red/green/blue bitmasks with color depth==8bpp. In that
	case always match against the whole byte.

2006-02-24  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/surface.c:
	wined3d: Don't use GetDevice in IWineD3DSurfaceImpl_GetContainer, as
	it adds a reference to the device that shouldn't be there.

2006-02-25  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/d3d8/Makefile.in, dlls/d3d8/basetexture.c, dlls/d3d8/d3d8_main.c,
	  dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d8/drawprim.c, dlls/d3d8/indexbuffer.c,
	  dlls/d3d8/pixelshader.c, dlls/d3d8/resource.c, dlls/d3d8/shader.c,
	  dlls/d3d8/stateblock.c, dlls/d3d8/swapchain.c, dlls/d3d8/texture.c,
	  dlls/d3d8/utils.c, dlls/d3d8/vertexbuffer.c,
	  dlls/d3d8/vertexshader.c, dlls/d3d8/vshaderdeclaration.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c:
	d3d8: Moved the remaining code over to WineD3D (based on patches by
	Oliver Stieber).

2006-02-25  Hans Leidekker <hans@it.vu.nl>

	* dlls/winsock/socket.c:
	winsock: Fix two Windows to Unix mapping issues.
	Handle wildcard address family hint in getaddrinfo.
	Convert flags too in getnameinfo.

2006-02-25  Henning Gerhardt <henning.gerhardt@web.de>

	* dlls/crypt32/crypt32.rc, dlls/crypt32/crypt32_De.rc:
	crypt32: Add German resource file.

2006-02-25  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/mscms/profile.c, dlls/mscms/tests/profile.c:
	mscms: One more LastError code fixed.

2006-02-24  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/tests/shlfolder.c:
	shell32/tests: Added test for Desktop::ParseDisplayName(SHGetFolderPath(CSIDL_PERSONAL))
	Test if the Desktop Folder's ParseDisplayName recognizes MyDocument's
	path.  Removed some HRESULT tests on IUnknown_Release calls, which
	returns ULONG.

2006-02-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Return error in NewChannelFromURL if retval is NULL.

	* dlls/mshtml/nsio.c:
	mshtml: Added nsIURI::Clone implementation.

	* dlls/mshtml/navigate.c, dlls/mshtml/persist.c:
	mshtml: Don't add null byte to post data.

	* dlls/mshtml/nsembed.c:
	mshtml: Init nsIOService as soon as possible.

2006-02-24  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/iphlpapi/ifenum.c:
	iphplapi: Define IF_NAMESIZE if missing.

2006-02-24  Alexander N. Sørnes <alex@thehandofagony.com>

	* dlls/crypt32/crypt32.rc, dlls/crypt32/crypt32_No.rc,
	  programs/notepad/No.rc, programs/winecfg/No.rc,
	  programs/wordpad/No.rc, programs/wordpad/rsrc.rc:
	Updated/new Norwegian Bokmål resources.

2006-02-24  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/ole32/storage32.c:
	ole32: Add descriptions for StgCreateDocfile and StgIsStorageFile functions.

2006-02-24  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/editor.c:
	riched20: Added a comment to make life easier.

2006-02-24  Francois Gouget <fgouget@free.fr>

	* dlls/user/tests/menu.c, dlls/winmm/wavemap/wavemap.c,
	  dlls/winmm/winealsa/midi.c, programs/winecfg/theme.c,
	  server/change.c:
	Assorted spelling fixes.

	* include/wincrypt.h, tools/winapi/win32.api:
	crypt32: Add CryptQueryObject() prototype.
	Update win32.api.

	* dlls/winsock/socket.c, include/ws2tcpip.h, tools/winapi/win32.api:
	winsock: Tweak getnameinfo() prototype.
	Tweak the getnameinfo() prototype to better match the Windows PSDK and
	the GetNameInfoW() prototype.
	Update win32.api.

	* include/sfc.h, tools/winapi/win32.api:
	sfc: Updates.
	Add a missing sfc.dll prototype.
	Add an sfc.dll section to win32.api for winapi_check.

	* dlls/msftedit/msftedit.spec:
	msftedit: Fix CreateTextServices() forward.

	* dlls/d3d8/device.c:
	d3d8: Remove spaces before '\n', spelling fix.

	* dlls/msvcrt/tests/file.c, dlls/ole32/tests/compobj.c,
	  dlls/riched20/tests/editor.c:
	Add trailing '\n's to ok() calls.

2006-02-24  Francois Gouget <fgouget@codeweavers.com>

	* dlls/user/defwnd.c:
	user32: Handle WM_ENDSESSION in DefWinProc().
	DefWinProc() should call PostQuitMessage() on WM_ENDSESSION if the
	shutdown is proceeding.

	* dlls/user/message.c:
	user32: 0 vs. INFINITE timeout.
	It is 0 that denotes an infinite timeout for the wine server now, not
	-1 (INFINITE).
	Document put_message_in_queue()'s check for INFINITE (done for
	backwards compatibility with Windows 9x).

	* dlls/user/user_main.c:
	user: Fix ExitWindows().
	- Use 0 to get an infinite timeout with SendMessageTimeoutW().
	- Use SendMessageTimeoutW() to send the WM_ENDSESSION messages too so
	we don't get stuck if a process is hung.
	- Only send WM_ENDSESSION to windows that received a
	WM_QUERYENDSESSION message. Also better mimick the Windows behavior.

2006-02-24  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/usp10.c:
	usp10: Tidy default values.
	Set values for pwLogClust, uJustification and fClusterStart similar to
	what Windows uses.

2006-02-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/x11drv_main.c:
	x11drv: Make the synchronous option a debug channel instead of a
	registry entry to make it easier to use.

	* configure, configure.ac:
	configure: Added special check for broken linux/capi.h.

	* dlls/ntdll/virtual.c:
	ntdll: Use PROT_NONE instead of 0.

	* dlls/kernel/dosmem.c:
	kernel: Don't request execute permission for DOS memory.

2006-02-23  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/store.c:
	crypt32: Use public functions during serialization rather than relying
	on the internal format of a certificate.

	* dlls/crypt32/.gitignore, dlls/crypt32/Makefile.in,
	  dlls/crypt32/crypt32.rc, dlls/crypt32/crypt32_En.rc,
	  dlls/crypt32/crypt32_private.h, dlls/crypt32/cryptres.h,
	  dlls/crypt32/main.c, dlls/crypt32/oid.c, dlls/crypt32/tests/oid.c,
	  dlls/crypt32/version.rc, include/wincrypt.h:
	crypt32: implement CryptEnumOIDInfo and CryptFindOIDInfo.
	- implement CryptEnumOIDInfo and CryptFindOIDInfo
	- implement CertOIDToAlgId and CertAlgIdToOID using CryptFindOIDInfo

2006-02-23  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool/tests: Skip tests, when a remote print server has no RPC
	service running.

2006-02-23  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/ole32/tests/storage32.c:
	ole32/tests: Do not compare returned by DeleteFile value with TRUE.

2006-02-23  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c:
	ole: Fallthrough from local activation in CoGetClassObject.
	If local-server or local-service activation doesn't work in
	CoGetClassObject then fallthrough instead of returning from the
	function.

	* dlls/oleaut32/olefont.c, dlls/oleaut32/tests/olefont.c:
	oleaut: Fix standard font cloning.
	Create new empty connection points on clone of the standard Font
	(based on a patch by Alex Villacís Lasso).

2006-02-23  Francois Gouget <fgouget@codeweavers.com>

	* dlls/user/tests/msg.c:
	user: Give meaningful names to the structures used to transfer
	information to the test threads.

2006-02-23  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: When evaluating conditions, if the condition is empty or none is
	provided then treat it as being satisfied.

2006-02-23  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/nodelist.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Fix for empty node lists.

2006-02-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi: Use "MS Sans Serif" as default sans serif font, not Arial.

2006-02-23  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/bitblt.c:
	gdi32: Fallback to StretchDIBits if the driver doesn't support BitBlt.

2006-02-23  Detlef Riekenberg <wine.dev@web.de>

	* dlls/cfgmgr32/Makefile.in, dlls/cfgmgr32/cfgmgr32.spec:
	cfgmgr32: Forward some functions to setupapi.dll.

2006-02-23  Mike McCormack <mike@codeweavers.com>

	* server/change.c:
	server: Add directories to recursive watches as they're opened.

2006-02-22  Juan Lang <juan_lang@yahoo.com>

	* include/wincrypt.h:
	wincrypt: Add OIDs.

2006-02-22  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/dirid.c:
	setupapi: Downgrade an ERR to a WARN.

2006-02-22  Kevin Koltzau <kevin@plop.org>

	* dlls/riched20/editor.c:
	riched20: Call GetClipboardData callback on cut/copy.

	* dlls/riched20/richole.c:
	riched20: Enable retrieving data through the ole interface.

	* dlls/riched20/clipboard.c:
	riched20: Ensure copied text is terminated with a null.

	* dlls/riched20/editor.c:
	riched20: EM_GETOLEINTERFACE is not a stub.

	* dlls/riched20/editor.c, dlls/riched20/editor.h, dlls/riched20/richole.c:
	riched20: Store reference to editor in ole interface.

	* dlls/riched20/clipboard.c:
	riched20: Allocate proper amount of memory for formatetc array.

2006-02-22  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/main.c, dlls/crypt32/oid.c, dlls/crypt32/tests/main.c,
	  dlls/crypt32/tests/oid.c:
	crypt32: Move OIDToAlgID and AlgIDToOID to oid.c.

	* dlls/crypt32/store.c, dlls/crypt32/tests/store.c:
	crypt32: Implement CertFindCertificateInStore, with tests.

2006-02-22  Stefan Leichter <Stefan.Leichter@camLine.com>

	* configure, configure.ac, dlls/Makefile.in, dlls/msftedit/.gitignore,
	  dlls/msftedit/Makefile.in, dlls/msftedit/msftedit.spec:
	Added msftedit.dll.

2006-02-22  Kevin Koltzau <kevin@plop.org>

	* dlls/riched20/Makefile.in, dlls/riched20/clipboard.c,
	  dlls/riched20/editor.c, dlls/riched20/editor.h,
	  dlls/riched20/editstr.h:
	riched20: Add IDataObject implementation and use it for cut/copy.

	* tools/widl/typegen.c:
	widl: Fix 64bit warning.

	* dlls/x11drv/clipboard.c:
	x11drv: Fix 64bit warning.

2006-02-22  Robert Shearman <rob@codeweavers.com>

	* dlls/msi/action.c:
	msi: Fix heap overflow in ITERATE_CreateShortcuts.

	* dlls/msi/source.c:
	msi: Init size before passing to RegEnumValue.

	* dlls/msi/files.c:
	msi: Always set a value for intype in ready_volume.
	Remove a memory leak.

	* dlls/msi/table.c:
	msi: Fix heap overflow in save_string_table.
	Fix heap overflow caused by not accounting for the dummy first item,
	which contains the codepage.

	* dlls/ole32/compobj.c, dlls/ole32/tests/compobj.c:
	ole: Make the CoCreateInstance test succeed.
	Move the uninitialized apartment check after zeroing out the return
	value.

2006-02-21  Brian Chang <brianch@seas.ucla.edu>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: EM_SETOPTIONS/EM_GETOPTIONS base implementation.
	ECO_READONLY implemented and tested.

2006-02-22  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/encode.c, dlls/crypt32/tests/store.c:
	crypt32: Tidy up tests.
	Fix up encoded data to use BYTE arrays rather than strings, and remove
	extraneous NULL bytes from the end of some of them

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec, dlls/crypt32/main.c,
	  dlls/crypt32/oid.c:
	crypt32: Add stubs for CryptFindOIDInfo and I_CryptInstallAsn1Module.
	Move CryptVerifyMessageSignature stub to main.c.

2006-02-22  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/kernel32.spec, dlls/kernel/process.c:
	kernel32: Add a stub implementation for CmdBatNotification.

2006-02-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c:
	kernel: Initialize the dll path from the main exe name explicitly
	since ImagePathName is not always set at that point.

	* programs/explorer/systray.c:
	explorer: Moved systray configuration option to a more appropriate place
	and make it compatible with the way other options are stored.

2006-02-19  Robert Shearman <rob@codeweavers.com>

	* dlls/shell32/shell32_main.c, dlls/shell32/shell32_main.h,
	  dlls/shell32/systray.c, programs/explorer/Makefile.in,
	  programs/explorer/explorer.c, programs/explorer/systray.c,
	  programs/explorer/systray.h:
	shell32: Move systray handling to the explorer process.

2006-02-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/module.c, dlls/kernel/thread.c, include/module.h:
	kernel: Get rid of module.h.

	* dlls/ntdll/loader.c, dlls/ntdll/loadorder.c, dlls/ntdll/ntdll.spec,
	  dlls/ntdll/ntdll_misc.h:
	ntdll: Simplify loadorder code by using an enum instead of an array
	to represent load order values.
	Added a special value for default load order so that we can handle it
	differently later on.

	* dlls/kernel/process.c:
	kernel: Don't bother checking load order of the exe in the parent process.

2006-02-22  Huw Davies <huw@codeweavers.com>

	* configure, configure.ac, dlls/gdi/freetype.c, include/config.h.in:
	gdi32: Update due to last minute api change in freetype 2.2.0.
	FT_Module_Get_Flags existed briefly in freetype 2.2.0.rc1 but has now
	been replaced by FT_Get_TrueType_Engine_Type.  There's no point in
	supporting an rc1 release, so this removes support for
	FT_Module_Get_Flags and adds support for FT_Get_TrueType_Engine_Type.

2006-02-22  Mike McCormack <mike@codeweavers.com>

	* server/change.c:
	server: Make sure we don't get into an infinite loop freeing inodes.

2006-02-22  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Add ScriptGetCMap functionality to translate wchars to glyphs.

2006-02-22  Peter Beutner <p.beutner@gmx.net>

	* dlls/msvcrt/cppexcept.c:
	msvcrt: Save esp before calling catch block and restore afterwards.
	It seems like the esp value (which is saved at [ebp-16]) is sometimes
	changed inside the catch handler so we end up with a bogus esp
	afterwards.  To avoid that save it before calling the catch block.

	* dlls/msvcrt/cppexcept.c:
	msvcrt: Fix handling of multiple nested exceptions.
	Save in each nested frame a pointer to the original exception record.
	Only one refence in thread_data isn't enough when we have multiple
	nested frames.

	* dlls/msvcrt/cppexcept.c:
	msvcrt: Fix handling of nested exceptions.
	Move handling of nested exceptions completely in the
	catch_function_nested_handler().  If a new exception was thrown inside
	a catch block destroy the old exception object, if it is a rethrow
	re-propagate the previous object.

2006-02-22  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/shell32/pidl.c, dlls/shell32/shfldr_unixfs.c,
	  dlls/shell32/shlexec.c, dlls/shell32/tests/shelllink.c,
	  dlls/shlwapi/path.c:
	shell32: Fixes for bugs found by valgrind on shell32 tests harness.
	- read strings from left to right (PathGetDriveNumberW)
	- don't access buffers before they are filled (SHGetPathFromIDListW)
	- fill buffers & variables on all paths (SHELL_FindExecutable)
	- handle error condition (unix_fs)
	- don't shoot in the blind for AW APIs (tests/shelllink.c)

2006-02-22  Marco Timpano <marcotimpano@hotmail.it>

	* dlls/winedos/ppdev.c:
	winedos: Fixed a couple of typos in ppdev.

2006-02-22  Francois Gouget <fgouget@free.fr>

	* dlls/mapi32/mapi32_main.c, dlls/mapi32/sendmail.c, include/mapi.h,
	  include/mapix.h:
	mapi: Add some missing MAPI prototypes.
	Add some missing MAPI prototypes to mapi.h (spotted by winapi_check)
	and include it where they are implemented.
	Make mapi.h and mapix.h compatible. gcc does not like macros and
	prototypes to be redefined so this involved protecting against
	multiple definitions.
	Fix the MAPISendMail() implementation prototype.

2006-02-21  Lei Zhang <leiz@ucla.edu>

	* dlls/riched20/Makefile.in, dlls/riched20/editor.c,
	  dlls/riched20/editor.h, dlls/riched20/tests/editor.c:
	riched20: Implement FR_MATCHCASE for EM_FINDTEXT.
	Removed todo flag from affected FR_MATCHCASE tests.

2006-02-21  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/msi/msi.spec, dlls/msi/source.c:
	msi: Implement MsiSourceListAddSource.

	* dlls/advapi32/security.c:
	advapi32: Add partial implementation of LookupAccountNameW.

2006-02-21  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/shell32/shell32.spec:
	shell32: Export PathResolve by name.

2006-02-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c, dlls/ntdll/loader.c, dlls/ntdll/ntdll_misc.h,
	  dlls/ntdll/thread.c:
	kernel: Moved the get_startup_info call to ntdll.

2006-02-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c, include/wine/server_protocol.h, server/process.c,
	  server/protocol.def, server/trace.c:
	server: Remove no longer needed fields in the init_process_done request.

2006-02-21  Aric Stewart <aric@codeweavers.com>

	* dlls/twain/ds_ctrl.c, dlls/twain/ds_image.c, dlls/twain/dsm_ctrl.c,
	  dlls/twain/twain_i.h:
	twain: Implment DG_IMAGE/DAT_IMAGEMEMXFER/MSG_GET.
	Implement the DG_IMAGE/DAT_IMAGEMEMXFER/MSG_GET code path. Along with
	a number of corrections and improvements to allow the actual aquiring
	of images to succeed.

2006-02-21  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/parseerror.c:
	msxml3: Improve parse error handling a bit.

	* dlls/msxml3/Makefile.in, dlls/msxml3/domdoc.c:
	msxml3: Use url monikers to load xml.

2006-02-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c, dlls/ntdll/loader.c:
	kernel: Use LoadLibrary to load the main exe in all cases.

	* dlls/ntdll/loader.c:
	ntdll: Support loading a builtin under a different name.
	Find the proper modref in that case based on the dlopen handle.

	* dlls/ntdll/loader.c:
	ntdll: Moved LDR_DONT_RESOLVE_REFS handling into fixup_imports.
	This ensures that we never fixup imports twice on the same dll.

	* dlls/shell32/tests/shlexec.c:
	shell32: Use more reasonable timeouts in shlexec test.

	* server/process.c:
	server: Avoid hang on process startup.
	Fixed the startup_info signaled state to avoid blocking the parent
	process when the child crashes on startup.

	* dlls/ntdll/loader.c:
	ntdll: Support loading builtin dlls with an explicit path name also
	when loadorder is set to builtin only.

2006-02-20  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/ntdll/loader.c:
	ntdll: Remove spaces at end of name in import_dll.

2006-02-20  Jason Green <jave27@gmail.com>

	* programs/winefile/En.rc, programs/winefile/resource.h,
	  programs/winefile/winefile.c, programs/winefile/winefile.h:
	winefile: Add the ability to save window position to the registry.

2006-02-21  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Add stub for ScriptTextOut.

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Add ScriptPlace funtionality.
	The key function is to calculate the total of the ABC widths of the
	characters converted to gylphs by ScriptShape.

2006-02-21  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/classinfo.c:
	shdocvw: Added correct implementation of IProvideClassInfo::GetGUID.

2006-02-20  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/d3dcore_gl.h, dlls/d3d8/directx.c,
	  dlls/d3d8/shader.c, dlls/wined3d/device.c, dlls/wined3d/directx.c:
	d3d8: Move the capability detection code over to WineD3D.
	Let the few existing parts which need the capabiliteis use the WineD3D
	capability structure (gl_info). This info structure contains next to
	'flags' inidicating certain features also all GL/GLX functions
	pointers. Because D3D8 moves over to the wined3d gl_info structure all
	the gl prototypes in d3dcore_gl.h were unneeded and removed.

2006-02-20  Lei Zhang <leiz@ucla.edu>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Fix for EM_FINDTEXT input validation.
	Fixed the cpMin/cpMax validation code for EM_FINDTEXT.
	Removed todo flag from affected EM_FINDTEXT tests.

2006-02-20  James Hawkins <truiken@gmail.com>

	* dlls/advpack/files.c, dlls/advpack/tests/files.c:
	advpack: Implement AddDelBackupEntry.

	* dlls/advpack/tests/files.c:
	advpack: Add tests for AddDelBackupEntry.

	* dlls/advpack/files.c:
	advpack: Make AddDelBackupEntry always return S_OK.

	* dlls/advpack/Makefile.in, dlls/advpack/advpack.c,
	  dlls/advpack/install.c:
	advpack: Branch off the advpack install functions into install.c.

	* dlls/advpack/advpack.c:
	advpack: Implement the Open/CloseINFEngine and TranslateINFStringEx
	trio of functions.

	* dlls/advpack/advpack.c, dlls/advpack/tests/advpack.c:
	advpack: Load the LDIDs of an install section in TranslateInfString.

2006-02-21  Dr J A Gow <J.A.Gow@furrybubble.co.uk>

	* dlls/ole32/stg_stream.c, dlls/ole32/storage32.c, dlls/ole32/storage32.h,
	  dlls/ole32/tests/storage32.c:
	ole32: Fix stream ref counting.
	Stream methods called after parent object has been closed correctly
	return STG_E_REVERTED.
	Stream refcounting fixed. Now can safely call IStorage destructor
	before IStream destructor and guarantee file will be closed.

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Fix up permissions when opening streams.
	Fix up permissions when opening streams in storage objects when
	storage object has been opened in transacted mode.

2006-02-21  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/tests/change.c:
	kernel32: Add a simple test for recursive notification.

	* dlls/kernel/tests/file.c:
	kernel32: Add a short test for GetOverlappedResult.

	* dlls/ntdll/directory.c, include/wine/server_protocol.h, server/change.c,
	  server/protocol.def, server/trace.c:
	server: Track created and removed directories in the tree of inodes for inotify.
	Add them to or remove them from existing recursive watches.

2006-02-21  Detlef Riekenberg <wine.dev@web.de>

	* dlls/ntdll/signal_i386.c:
	ntdll: Avoid compile error caused by a single quote.

2006-02-20  Hans Leidekker <hans@it.vu.nl>

	* configure, configure.ac, dlls/winsock/socket.c,
	  dlls/winsock/ws2_32.spec, include/config.h.in, include/ws2tcpip.h:
	winsock: Implement getnameinfo.

2006-02-20  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/menu.c:
	menu: Take the MF_DEFAULT flag in to account in MENU_CalcItemSize.

2006-02-20  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/signal_i386.c:
	ntdll: Add a define for SYS_sigaction to __NR_sigaction.
	Print an error if __NR_sigaction doesn't exist as this means the wrong
	syscall header is being used.

2006-02-20  Vitaly Lipatov <lav@etersoft.ru>

	* configure, configure.ac, dlls/winsock/socket.c, include/config.h.in:
	winsock: Add check for sin6_scope_id.

2006-02-20  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/Makefile.in, dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Add ScriptShape functionality.

2006-02-18  Roger Hoang <rogerhoang@hotmail.com>

	* dlls/riched20/editor.c, dlls/riched20/editstr.h,
	  dlls/riched20/tests/editor.c:
	riched20: Implemented EM_SETTEXTMODE options TM_RICHTEXT and TM_PLAINTEXT
	and their tests.

2006-02-20  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Set default original uri in NewChannelFromURI.

2006-02-20  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/tests/change.c, server/change.c:
	server: Distinguish between a directory and a file changing in
	ReadDirectoryChangesW.
	Add a test for it.

2006-02-20  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/elf_module.c,
	  dlls/dbghelp/module.c, dlls/dbghelp/path.c, dlls/dbghelp/pe_module.c:
	dbghelp: Virtual modules.
	Rewrote virtual modules handling so that it's an option to either PE
	or ELF modules rather than a specific type.

2006-02-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/dosmem.c:
	kernel: Don't require execute permission for DOS memory, this will be
	done in winedos if necessary.

2006-02-20  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/tests/menu.c:
	user: Add conformance tests for menu item drawing.

	* dlls/user/menu.c:
	user: Menu drawing fixes.
	- check mark is drawn left of a bitmap;
	- if a MNS_CHECKORBMP-style menu has a checkmark, do no draw any bitmap;
	- space for the popup arrow is also reserved for non popup items;
	- implement the MNS_NOCHECK style.

	* dlls/user/menu.c:
	user:  Menu string width calculation fixes.
	- Use DrawText in stead of GetTextExtendPoint32, to properly measure
	strings with ampersands like "&File";
	- Fix mess with strings with an embedded tab;
	- In case of a menu bar, two extra pixels are added if the item has
	both a bitmap and string.

	* dlls/user/menu.c:
	user: Menu drawing fixes.
	Replace some #defined constants by values calculated from windows
	metrics.

	* dlls/user/menu.c:
	user: Menu drawing fixes.
	- Move sending WM_MEASUREITEM message for HBMMENU_CALLBACK bitmaps to
	MENU_GetBitmapItemSize();
	- Save the received bitmap size in the menu item structure as it will
	need to be sent in the WM_DRAWITEM message;
	-  Move sending WM_DRAWITEM message for HBMMENU_CALLBACK bitmaps to
	MENU_DrawBitmapItem();
	- This also means that HBMMENU_CALLBACK bitmaps are now supported in
	menu bars.

	* dlls/user/menu.c:
	user: Move drawing of pop menu arrows to a subroutine reduces nesting
	level of some large if statements in the drawing code. Some updates to
	the comments.

2006-02-20  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool/tests: Add some tests for SetDefaultPrinterA/W.

	* dlls/winspool/info.c, dlls/winspool/winspool.drv.spec:
	winspool: Add documentation and a stub for SetDefaultPrinterA/W.

2006-02-20  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/shell32/shlfolder.c:
	shell32: Avoid recursing SHELL32_GetItemAttributes() calls.

2006-02-20  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, loader/Makefile.in, server/Makefile.in:
	configure: Use --rpath if supported when building binaries to point to
	the relative location of the wine libraries.

2006-02-20  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msvcrt/undname.c:
	msvcrt: Misc cleanups in undname.c.
	- remove unused argument from functions
	- print the pointer in the str_array_push TRACE to be able to distinguish
	the different arrays.
	- comment and white space cleanups

	* dlls/msvcrt/tests/cpp.c:
	msvcrt: Add some tests for __unDName().
	Add some tests for unDName() checking:
	- data type modifiers A,B,P,Q,R,S
	- literal strings
	- back references to names

	* dlls/msvcrt/undname.c:
	msvcrt: Use a separate stack for back references to names
	Use a separate array/stack for the back references to names as
	sym->stack is used to push temporary strings to it which breaks back
	referencing in some occasions (26 symbols in the mfc42 dll).  During
	this cleanup get_class() a little bit.

	* dlls/msvcrt/undname.c:
	msvcrt: Move code to parse a literal string out of get_class().
	unDName: Move the code to parse a literal string from get_class() to a
	separate function. Add some error handling to the new function.

	* dlls/msvcrt/undname.c:
	msvcrt: Wrap get_class() and get_class_string() for unDName.

	* dlls/msvcrt/tests/cpp.c:
	msvcrt: Fix 20 tests from demangle_test() on old Win versions.
	In test_demangle use a custom strcmp that treats multiple spaces as
	single space. __unDName() from older msvcrt (including W2K it seems)
	emit in some places 2 spaces instead of one. Fixes 20 failing tests on
	those old Windows versions.

2006-02-20  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/compobj.c:
	ole: Test the behaviour of CoCreateInstance with an uninitialized apartment.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/rpc.c:
	ole: Change the Apartment Model field to a boolean.
	Change the apartment model field to a boolean that just specifies
	whether the apartment is multi-threaded or not and fix up all the
	places where this is used.
	Fixes a bug where we would return an error if the previous apartment
	model passed into CoInitializeEx matches the new apartment model, but
	additional optimisation flags are specified.

2006-02-20  YunSong Hwang <hys545@dreamwiz.com>

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

	* programs/wordpad/Ko.rc, programs/wordpad/rsrc.rc:
	wordpad: Add Korean translation.

2006-02-20  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/path.c:
	dbghelp: Fix SymFindFileInPath to return files matching the requested
	criteria (it was mainly doing the opposite).

2006-02-20  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/client.c:
	shdocvw: Change FIXMEs to TRACE in IDispatch's methods as they return
	E_NOTIMPL in Windows as well.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl,
	  dlls/mshtml/nsio.c:
	mshtml: Create nsIChannel for protocols not handled by Gecko.

2006-02-20  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/mscms/profile.c, dlls/mscms/tests/profile.c:
	mscms: Fix four todos for GetStandardColorSpaceProfile[AW].

	* dlls/mscms/tests/profile.c:
	mscms: Branching fixes for some test routines

2006-02-20  Mike McCormack <mike@codeweavers.com>

	* dlls/setupapi/misc.c, dlls/setupapi/setupapi.spec:
	setupapi: Add a stub implementation of CMP_WaitNoPendingInstallEvents.

2006-02-20  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/resources/user32_Bg.rc, dlls/user/resources/user32_Ca.rc,
	  dlls/user/resources/user32_Cs.rc, dlls/user/resources/user32_Da.rc,
	  dlls/user/resources/user32_De.rc, dlls/user/resources/user32_En.rc,
	  dlls/user/resources/user32_Eo.rc, dlls/user/resources/user32_Es.rc,
	  dlls/user/resources/user32_Fi.rc, dlls/user/resources/user32_Fr.rc,
	  dlls/user/resources/user32_Hu.rc, dlls/user/resources/user32_It.rc,
	  dlls/user/resources/user32_Ja.rc, dlls/user/resources/user32_Ko.rc,
	  dlls/user/resources/user32_Nl.rc, dlls/user/resources/user32_No.rc,
	  dlls/user/resources/user32_Pl.rc, dlls/user/resources/user32_Pt.rc,
	  dlls/user/resources/user32_Ru.rc, dlls/user/resources/user32_Si.rc,
	  dlls/user/resources/user32_Sk.rc, dlls/user/resources/user32_Sv.rc,
	  dlls/user/resources/user32_Tr.rc, dlls/user/resources/user32_Uk.rc,
	  dlls/user/resources/user32_Wa.rc, dlls/user/resources/user32_Zh.rc:
	user: Add the DS_NOIDLEMSG style to message boxes.

2006-02-20  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* programs/winhelp/winhelp.c:
	winhelp: Zero out WINHELP_WINDOW in WINHELP_CreateHelpWindow.

2006-02-20  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/d3d8/basetexture.c, dlls/d3d8/cubetexture.c, dlls/d3d8/d3d8_main.c,
	  dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/resource.c,
	  dlls/d3d8/surface.c, dlls/d3d8/texture.c, dlls/d3d8/volume.c,
	  dlls/d3d8/volumetexture.c:
	d3d8: Move texturing code over to wined3d (based on Oliver Stieber's work).

2006-02-20  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/stack.c:
	winedbg: Fixed regression: stack info was no longer working.

2006-02-18  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Add ScriptItemize functionality.

2006-02-18  Hans Leidekker <hans@it.vu.nl>

	* programs/winebrowser/Makefile.in, programs/winebrowser/main.c:
	winebrowser: Handle file URLs.

2006-02-18  Juan Lang <juan_lang@yahoo.com>

	* dlls/wintrust/wintrust.spec, dlls/wintrust/wintrust_main.c,
	  include/wintrust.h:
	wintrust: Add some stubs.

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/tests/cert.c, include/wincrypt.h:
	crypt32: Implement enhanced key usage.
	Implement CertGetEnhancedKeyUsage, CertSetEnhancedKeyUsage,
	CertAddEnhancedKeyUsageIdentifier, and
	CertRemoveEnhancedKeyUsageIdentifier.

2006-02-18  Stefan Leichter <Stefan.Leichter@camLine.com>

	* programs/winetest/Makefile.in:
	winetest: Added usp10 tests.

2006-02-18  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Fix previous change to still build all the binaries on
	x86_64 in 32-bit mode.

2006-02-17  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/user/menu.c:
	user: Implement scrolling in popup menus.

2006-02-17  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/config.c, libs/wine/loader.c:
	libwine: Add the runtime library path to the front of the dll paths list.

	* dlls/dbghelp/elf_module.c:
	dbghelp: Use wine_dll_enum_load_path to search the dll load path.

2006-02-17  Peter Beutner <p.beutner@gmx.net>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Correctly set EOF flag in fread().
	Setting the EOF flag only if _read() returns zero is not enough as we
	could also read something AND hit the end of file.
	_read() already sets another internal EOF flag, so just use this too.
	Removing todo_wine from the test case.

	* dlls/msvcrt/tests/file.c:
	msvcrt: Add test for fread/feof.
	When calling fread() with a large enough buffer to reach the end of
	the file a subsequent feof() should return true; (marked as todo_wine
	because it doesn't work atm).

	* dlls/msvcrt/cppexcept.c:
	msvcrt: Remove bogus code.
	We can't just pop a exception record from the exception handler list
	which we haven't put there.

	* dlls/msvcrt/file.c:
	msvcrt: Fix use of uninitialized variable.

2006-02-17  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool/tests: Add tests for EnumMonitors.

2006-02-17  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/cert.c, dlls/crypt32/store.c,
	  dlls/crypt32/tests/.gitignore, dlls/crypt32/tests/Makefile.in,
	  dlls/crypt32/tests/cert.c, dlls/crypt32/tests/store.c:
	crypt32: Move certificate store functions to their own file.

2006-02-17  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, loader/Makefile.in:
	configure: Default to building wine-pthread on non-x86 platforms.

2006-02-17  Eric Pouech <eric.pouech@wanadoo.fr>

	* include/dbghelp.h:
	dbghelp: Packing for minidump structures is 4 bytes.

2006-02-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/dbghelp/elf_module.c, dlls/msacm/wineacm.h,
	  dlls/wldap32/winldap_private.h:
	Fixed a couple of function prototypes.

	* libs/wine/Makefile.in, libs/wine/config.c:
	libwine: Set the default bindir and dlldir from argv0 if dladdr is not available.
	Added dependency on $(RELPATH).

	* libs/wine/Makefile.in, libs/wine/config.c:
	libwine: Compute relative paths for bin and dll directories at compile time.

	* Make.rules.in, tools/.gitignore, tools/Makefile.in, tools/relpath.c:
	tools: Added 'relpath' tool to compute relative Unix paths.

	* dlls/ntdll/server.c:
	ntdll: Remove no longer used oldcwd in start_server.

2006-02-17  Mike McCormack <mike@codeweavers.com>

	* server/change.c:
	server: Use a single inotify watch, as it scales better with a large
	number of directories.

2006-02-17  Phil Krylov <phil@newstar.rinet.ru>

	* programs/wordpad/Ru.rc, programs/wordpad/rsrc.rc:
	wordpad: Russian translation.

2006-02-17  Hans Leidekker <hans@it.vu.nl>

	* programs/wordpad/Nl.rc, programs/wordpad/rsrc.rc:
	wordpad: Dutch localization.

2006-02-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/navigate.c:
	mshtml: Fix post data parsing.

2006-02-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c, dlls/ntdll/server.c, include/wine/library.h,
	  libs/wine/config.c, loader/glibc.c:
	libwine: Try the current load path in priority before the
	WINELOADER/WINESERVER environment variables in wine_exec_wine_binary.

	* libs/wine/config.c:
	libwine: Don't rely on argv[0] in wine_exec_wine_binary if we can get
	the directory from the library itself.
	Only try the hardcoded BINDIR if everything else failed.

	* libs/wine/config.c:
	libwine: Only use the library directory if it's an absolute path.

2006-02-16  Paul Vriens <Paul.Vriens@xs4all.nl>

	* programs/winecfg/Bg.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Ja.rc,
	  programs/winecfg/Ko.rc, programs/winecfg/Nl.rc,
	  programs/winecfg/No.rc, programs/winecfg/Ru.rc,
	  programs/winecfg/Tr.rc, programs/winecfg/resource.h,
	  programs/winecfg/winecfg.c:
	winecfg: Localize the app specific title.

2006-02-16  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/encode.c, dlls/crypt32/tests/encode.c:
	crypt32: More encoding/decoding.
	Add support for encoding/decoding basic constraints and enhanced key
	usage, with tests.

	* dlls/crypt32/cert.c, dlls/crypt32/tests/cert.c:
	crypt32: Simplify CertOpenSystemStore, fix CertDuplicateCertificateContext.
	- now that CertOpenStore is correct for system stores, simplify
	CertOpenSystemStore
	- correct CertDuplicateCertificateStore, with a test

2006-02-16  YunSong Hwang <hys545@dreamwiz.com>

	* programs/progman/Ko.rc, programs/progman/rsrc.rc:
	progman: Updated Korean translation.

2006-02-16  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/Makefile.in, dlls/msxml3/comment.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/node.c:
	msxml3: Implement comment node.

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Fix get_text on text nodes.

2006-02-16  Thomas Kho <tkho@ucla.edu>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Implement EM_SCROLLCARET and EM_GETSCROLLPOS.

2006-02-16  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/typelib.c:
	oleaut: Test some error conditions in ITypeInfo::GetIDsOfNames and ITypeInfo::Invoke.

2006-02-16  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/mscms/tests/profile.c:
	mscms: Distinguish between registered and unregistered profile IDs.

2006-02-16  Robert Shearman <rob@codeweavers.com>

	* tools/winebuild/winebuild.man.in:
	winebuild: Correction for manpage.
	The behaviour for winebuild is to prefer main over WinMain, not the
	other way around.

2006-02-16  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Unaccess post data only if we've accessed it before.

2006-02-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/.gitignore, dlls/Makedll.rules.in, dlls/Makefile.in,
	  dlls/make_dlls, libs/wine/loader.c:
	libwine: New naming scheme for 16-bit builtin dlls.
	Stop using symlinks for 16-bit dlls to make sure they don't get loaded
	by mistake when looking for a 32-bit dll.

2006-02-16  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/comctl32/monthcal.c, dlls/comctl32/tests/monthcal.c:
	comctl32: Remove/swap limits if min > max in MCM_SETRANGE.
	We should swap min & max only when both limits are being
	set. Otherwise limit that being set should invalidate other limit
	(remove it).

	* dlls/comctl32/monthcal.c, dlls/comctl32/tests/monthcal.c:
	comctl32: Don't change month range in MCM_SETRANGE. Add tests for this.

2006-02-16  Juan Lang <juan_lang@yahoo.com>

	* dlls/wininet/internet.c:
	wininet: Use CertNameToStr for INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT
	and update comment.

	* dlls/crypt32/cert.c:
	crypt32: Fix system stores and a memory leak.
	- system stores open both HKLM and HKCU for "current user" locations
	- fix a memory leak in certificate properties

2006-02-16  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/wordpad/Fr.rc, programs/wordpad/rsrc.rc:
	wordpad: French localization.

2006-02-16  Alexandre Julliard <julliard@winehq.org>

	* .gitignore:
	Merge the contents of info/exclude into the top-level .gitignore.

	* server/debugger.c, server/process.c, server/process.h,
	  server/snapshot.c:
	server: Store the process exe module in the standard dll list.

	* dlls/d3d8/cubetexture.c:
	d3d8: Fixed compile with older GL versions.

2006-02-16  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c:
	wined3d: Set the texture size for d3d8.

2006-02-16  YunSong Hwang <hys545@dreamwiz.com>

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

2006-02-16  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/winecfg/Fr.rc:
	winecfg: French resource update.

2006-02-16  Henning Gerhardt <henning.gerhardt@web.de>

	* programs/wordpad/De.rc, programs/wordpad/En.rc,
	  programs/wordpad/rsrc.rc:
	wordpad: Added German resource.

2006-02-16  Hans Leidekker <hans@it.vu.nl>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: Fix parameter check for UrlUnescapeA.
	NULL pszUnescaped is okay if URL_UNESCAPE_INPLACE is set.
	Add a corresponding test for UrlUnescape{A,W}.

2006-02-16  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/str.c, include/wincrypt.h:
	crypt32: Partially implement CertGetNameString.

2006-02-16  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/stack.c, programs/winedbg/winedbg.c:
	winedbg: A couple of fixes after running valgrind.

2006-02-16  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Implement ScriptGetProperties.

2006-02-15  Alexandre Julliard <julliard@winehq.org>

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

----------------------------------------------------------------
2006-02-15  Emmanuel Maillard <mahanuu@opendarwin.org>

	* configure, configure.ac, libs/wine/Makefile.in, loader/main.c:
	loader: Reserve memory area on Darwin (based on Steve Zellers patch).

2006-02-15  Thomas Kho <tkho@ucla.edu>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Extend EM_FINDTEXT conformance tests and fix 2 problems they expose.

2006-02-15  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/shdocvw.spec,
	  dlls/shdocvw/shdocvw_main.c:
	shdocvw: Implemented a couple of forwards to shlwapi.

2006-02-15  Jacek Caban <jacek@codeweavers.com>

	* programs/winecfg/libraries.c:
	winecfg: glut32.dll may be configured as native.

	* dlls/shdocvw/client.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Added client site's IServiceProvider interface.

	* dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Navigate2 rewrite.

	* dlls/shdocvw/navigate.c:
	shdocvw: Added beginning IHlinkFrame::Navigate implementation.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl, dlls/mshtml/persist.c:
	mshtml: Added hack to allow pass post data to IPersistMoniker::Load.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsio.c:
	mshtml: Added ref counting to NSContainer.
	- Added ref counting to NSContainer.
	- Better destroying of NSContainer.

2006-02-15  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c:
	crypt32: Rename a variable for clarity.

	* dlls/crypt32/str.c:
	crypt32: Output string type in trace.

2006-02-15  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/tests/storage32.c:
	ole32: Added a test showing OLE storage's IStorage/IStream refcounting
	behaviour.

	* include/winnt.h:
	include: Add WT_ defines for use with RegisterWaitForSingleObject.

2006-02-15  Paul Vriens <Paul.Vriens@xs4all.nl>

	* programs/winecfg/Nl.rc:
	winecfg: Update Dutch resources.

2006-02-14  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/editor.c:
	riched20: Support RTF text in WM_SETTEXT.

2006-02-14  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Added stub for ScriptGetCMap.

2006-02-14  Jeff Latimer <lats@yless4u.com.au>

	* configure, configure.ac, dlls/usp10/Makefile.in,
	  dlls/usp10/tests/.gitignore, dlls/usp10/tests/Makefile.in,
	  dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Added some tests.

2006-02-14  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/secur32/schannel.c:
	secur32: Add InitializeSecurityContext stub for schannel.

2006-02-14  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/d3d8/cubetexture.c, dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/resource.c, dlls/d3d8/surface.c, dlls/d3d8/texture.c:
	d3d8: Move d3d8 surface over to wined3d (based on the work of Oliver Stieber).

2006-02-14  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/comctl32/monthcal.c, dlls/comctl32/tests/monthcal.c:
	comctl32: Fix invalid date/time check in MCM_SETRANGE: ignore time and fail on bad date.

2006-02-14  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/mscms/tests/profile.c:
	mscms: Move 4 test macros into a single one.

2006-02-14  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/msacm/winemp3/mpegl3.c:
	winemp3: Increase factor from 4 to 12 in MPEG3_StreamSize.
	- Increase size factor from 4 to 12 in MPEG_StreamSize, otherwise
	mpglib buffer queue grows.
	- Add TRACE of mpglib buffer queue for conversion.

2006-02-14  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/ctl3d/.gitignore, dlls/ctl3d/Makefile.in, dlls/ctl3d/ctl3d.c,
	  dlls/ctl3d/ctl3d.spec, dlls/ctl3d/ctl3d32.c, dlls/ctl3d/ctl3d32.spec,
	  dlls/ctl3d/ctl3dv2.spec, dlls/ctl3d32/.gitignore,
	  dlls/ctl3d32/Makefile.in, dlls/ctl3d32/ctl3d.c,
	  dlls/ctl3d32/ctl3d.spec, dlls/ctl3d32/ctl3d32.c,
	  dlls/ctl3d32/ctl3d32.spec, dlls/ctl3d32/ctl3dv2.spec:
	ctl3d32: Renamed ctl3d directory to ctl3d32.

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/olesvr/.gitignore, dlls/olesvr/Makefile.in,
	  dlls/olesvr/olesvr.spec, dlls/olesvr/olesvr32.spec,
	  dlls/olesvr/olesvr_main.c, dlls/olesvr32/.gitignore,
	  dlls/olesvr32/Makefile.in, dlls/olesvr32/olesvr.spec,
	  dlls/olesvr32/olesvr32.spec, dlls/olesvr32/olesvr_main.c:
	olesvr32: Renamed olesvr directory to olesvr32.

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/olecli/.gitignore, dlls/olecli/Makefile.in,
	  dlls/olecli/olecli.spec, dlls/olecli/olecli16.c,
	  dlls/olecli/olecli32.spec, dlls/olecli/olecli_main.c,
	  dlls/olecli32/.gitignore, dlls/olecli32/Makefile.in,
	  dlls/olecli32/olecli.spec, dlls/olecli32/olecli16.c,
	  dlls/olecli32/olecli32.spec, dlls/olecli32/olecli_main.c:
	olecli32: Renamed olecli directory to olecli32.

2006-02-14  Detlef Riekenberg <wine.dev@web.de>

	* DEVELOPERS-HINTS, configure, configure.ac, dlls/Makefile.in,
	  dlls/sfc/.gitignore, dlls/sfc/Makefile.in, dlls/sfc/sfc.spec,
	  dlls/sfc/sfc_main.c:
	sfc: Add sfc.dll with a stub for SfcIsFileProtected.

	* include/Makefile.in, include/sfc.h:
	include: Add sfc.h.

2006-02-14  Krzysztof Foltman <wdev@foltman.com>

	* configure, configure.ac, programs/Makefile.in,
	  programs/wordpad/.gitignore, programs/wordpad/En.rc,
	  programs/wordpad/Makefile.in, programs/wordpad/resource.h,
	  programs/wordpad/rsrc.rc, programs/wordpad/wordpad.c:
	programs: Add an implementation of Wordpad.

2006-02-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/msc.c, dlls/dbghelp/pe_module.c, dlls/dbghelp/symbol.c:
	dbghelp: Always set the size to public symbols to 1 when we don't know the size
	so that they can only be search on their start address

	* programs/winedbg/debug.l:
	winedbg: Allow using MSVC mangled symbol names as identifiers.

2006-02-14  Mike Frysinger <vapier@gentoo.org>

	* Makefile.in, dlls/Makedll.rules.in, dlls/Makefile.in,
	  dlls/Makeimplib.rules.in, dlls/make_dlls, dlls/wineps/Makefile.in,
	  documentation/Makefile.in, fonts/Makefile.in, include/Makefile.in,
	  libs/Makelib.rules.in, loader/Makefile.in, programs/Makefile.in,
	  programs/Makeprog.rules.in, programs/avitools/Makefile.in,
	  programs/make_progs, programs/winedbg/Makefile.in,
	  programs/winemenubuilder/Makefile.in, server/Makefile.in,
	  tools/Makefile.in, tools/widl/Makefile.in, tools/winapi/Makefile.in,
	  tools/winebuild/Makefile.in, tools/winedump/Makefile.in,
	  tools/winegcc/Makefile.in, tools/wmc/Makefile.in,
	  tools/wrc/Makefile.in:
	Add support for 'make install DESTDIR'.

2006-02-14  Michael Jung <mjung@iss.tu-darmstadt.de>

	* programs/winecfg/Bg.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Ja.rc,
	  programs/winecfg/Ko.rc, programs/winecfg/Makefile.in,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Tr.rc,
	  programs/winecfg/driveui.c, programs/winecfg/main.c,
	  programs/winecfg/resource.h, programs/winecfg/theme.c,
	  programs/winecfg/winecfg.h:
	winecfg: Support for setting symlinks for 'Desktop' and 'My Stuff' shell folders.

2006-02-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/process.c, dlls/ntdll/signal_i386.c:
	A couple of new valgrind instrumentations for better support.

2006-02-14  Jeremy White <jwhite@codeweavers.com>

	* dlls/twain/dsm_ctrl.c:
	twain: Reconcile sane's long names to TWAIN's 32 byte limit.

	* dlls/twain/twain.h:
	twain: Make structures respect 2 byte packing requirements.

2006-02-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* server/context_alpha.c, server/context_i386.c, server/context_powerpc.c,
	  server/context_sparc.c, server/context_x86_64.c, server/ptrace.c,
	  server/thread.h:
	server: When possible, use tgkill instead of tkill syscall on Linux.

2006-02-14  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/query.c, dlls/setupapi/tests/query.c:
	setupapi: Handle the INFINFO_REVERSE_DEFAULT_SEARCH search flag.

	* dlls/setupapi/query.c, dlls/setupapi/tests/query.c:
	setupapi: Handle the INFINFO_INF_NAME_IS_ABSOLUTE and
	INFINFO_DEFAULT_SEARCH search flags.

2006-02-14  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winmm/driver.c:
	winmm: Protect drivers list by a critical section.

2006-02-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* include/wine/test.h:
	tests: Fixed test framework against environment modifications.

2006-02-14  Troy Rollo <wine@troy.rollo.name>

	* dlls/user/dialog.c, include/winuser.h:
	user: Fix argument type of IsDlgButtonChecked.

	* dlls/user/scroll.c, include/winuser.h:
	user: Fix argument type for EnableScrollBar.

	* dlls/user/dialog.c, include/winuser.h:
	user: Fix argument types for CheckRadioButton.

	* dlls/user/dialog.c, include/winuser.h:
	user: Fix return type and argument type for GetDlgItemText{A,W}.

2006-02-14  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvideo/msvideo_main.c, dlls/msvideo/msvideo_private.h:
	msvfw32: Disable datarate, keyframe and quality controls to not
	confuse users by a not implemented functionality.
	Add support for About codec control.

	* dlls/msvideo/msvideo_main.c:
	msvfw32: Initialize lpbiIn member of the COMPVARS structure.

2006-02-14  Stefan Leichter <Stefan.Leichter@camLine.com>

	* programs/winetest/Makefile.in:
	winetest: Add riched20 tests.

2006-02-14  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/pidl.c, dlls/shell32/pidl.h, dlls/shell32/shellpath.c:
	shell32: Return a GUID pidl for CSIDL_PERSONAL in SHGetFolderLocation.
	The tests (shellpath.c/testPersonal) already show that it can be either
	PT_FOLDER or PT_GUID. It's PT_GUID on WinXP.

2006-02-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* loader/pthread.c:
	loader: Added missing attr destroy.

2006-02-14  Robert Shearman <rob@codeweavers.com>

	* documentation/.gitignore:
	Ignore documentation/html.

	* tools/c2man.pl:
	tools/c2man.pl: Generate correct html.

	* dlls/wininet/gopher.c, dlls/wininet/http.c:
	wininet: Documentation fixes.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Free connection point on destruction of the picture object.
	Handle failure of CreateConnectionPoint on construction.

	* dlls/oleaut32/typelib.c:
	oleaut32: Fix returning Typelib file name.
	We can't use GetModuleFileName on a resource-only module, so the best
	we can do is to copy the original name we used to find the type
	library.  Fix a couple of places where we were incorrectly using the
	file name, rather than the path.

	* dlls/oleaut32/olefont.c:
	oleaut32: Free the connection points on destruction of the font object.
	Free the connection points on destruction of the font object and cope
	with failure of CreateConnectionPoint on construction.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Don't try to release NULL COM objects in the typelib
	marshaler.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Fix flag comparison in Picture Invoke.
	One or more invoke flags can be passed into IDispatch::Invoke, but we
	only care if INVOKEFLAG_PROPERTYGET is specified, and don't about any
	others.

2006-02-14  Alexandre Julliard <julliard@winehq.org>

	* server/queue.c:
	server: Try to update the input key state even when the message is
	dropped in queue_hardware_message. This should fix some problems with
	the Alt key getting "stuck" after Alt-Tab.

2006-02-14  Francois Gouget <fgouget@free.fr>

	* dlls/kernel/locale_rc.rc, dlls/oleaut32/hash.c, include/winnt.h,
	  tools/widl/hash.c, tools/wine.inf:
	include: Add missing LANG_xxx and SUBLANG_xxx constants.

2006-02-14  Michael Jung <mjung@iss.tu-darmstadt.de>

	* programs/winecfg/De.rc:
	winecfg: Cleaned up various control positions on the German version of
	the audio tab.

	* dlls/shell32/regsvr.c:
	shell32: Register 'LocalizedString' values for shellfolder classes.

	* dlls/shell32/classes.c:
	shell32: Query for localized string in HCR_GetClassName.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/registry.c, include/winreg.h:
	advapi32: Implemented RegLoadMUIString[AW].

2006-02-14  Phil Lodwick <Phil.Lodwick@EFI.COM>

	* dlls/winsock/tests/sock.c:
	winsock/tests: select wakeup on closesocket.
	- Change select timeout from 2 seconds to 500 microseconds.
	- Add test to make sure select wakes up after a closesocket.
	- Add test to make sure listen fails without bind.

2006-02-14  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/msxml_private.h, dlls/msxml3/node.c,
	  dlls/msxml3/nodelist.c, dlls/msxml3/tests/domdoc.c:
	msxml: Implement getElementsByTagName.

2006-02-14  Hans Leidekker <hans@it.vu.nl>

	* dlls/msxml3/main.c, dlls/msxml3/msxml3.spec:
	msxml3: Implement DllUnregisterServer.

2006-02-13  Petr Tesarik <hat@tesarici.cz>

	* programs/winhelp/Cs.rc:
	winhelp: Czech language resources encoding fix.

	* programs/winemine/Cs.rc:
	winemine: Czech language resources encoding fix.

	* programs/winefile/Cs.rc:
	winefile: Czech language resources encoding fix.

	* programs/wineconsole/wineconsole_Cs.rc:
	wineconsole: Czech language resources encoding fix.

	* programs/winecfg/Cs.rc:
	winecfg: Czech language resources encoding fix.

	* programs/wcmd/Cs.rc:
	wcmd: Czech language resources encoding fix.

	* programs/view/Cs.rc:
	view: Czech language resources encoding fix.

	* programs/uninstaller/Cs.rc:
	uninstaller: Czech language resources encoding fix.

	* programs/start/Cs.rc:
	start.exe: Czech language resources encoding fix.

	* programs/regedit/Cs.rc:
	regedit: Czech language resources encoding fix.

	* programs/progman/Cs.rc:
	progman: Czech language resources encoding fix.

	* programs/notepad/Cs.rc:
	notepad: Czech language resources encoding fix.

	* programs/cmdlgtst/Cs.rc:
	cmdlgtst: Czech language resources encoding fix.

	* programs/clock/Cs.rc:
	clock: Czech language resources encoding fix.

	* dlls/winmm/winmm_Cs.rc:
	winmm: Czech language resources encoding fix.

	* dlls/wininet/wininet_Cs.rc:
	wininet: Czech language resources encoding fix.

	* dlls/user/resources/user32_Cs.rc:
	user32: Czech language resources encoding fix.

	* dlls/wineps/wps_Cs.rc:
	wineps: Czech language resources encoding fix.

	* dlls/shell32/shell32_Cs.rc:
	shell32: Czech language resources encoding fix.

	* dlls/setupapi/Cs.rc:
	setupapi: Czech language resources encoding fix.

	* dlls/serialui/Cs.rc:
	serialui: Czech language resources encoding fix.

	* dlls/oledlg/oledlg_Cs.rc:
	oledlg: Czech language resources encoding fix.

	* dlls/mpr/mpr_Cs.rc:
	mpr: Czech language resources encoding fix.

	* dlls/msrle32/msrle_Cs.rc:
	msrle32: Czech language resources encoding fix.

	* dlls/msacm/msacm_Cs.rc:
	msacm: Czech language resources encoding fix.

	* dlls/hhctrl.ocx/Cs.rc:
	hhctrl.ocx: Czech language resources encoding fix.

	* dlls/commdlg/cdlg_Cs.rc:
	commdlg: Czech language resources encoding fix.

	* dlls/comctl32/comctl_Cs.rc:
	comctl32: Czech language resources encoding fix.

	* dlls/avifil32/avifile_Cs.rc:
	avifil32: Czech language resources encoding fix.

2006-02-13  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/hlink.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
	  dlls/mshtml/nsio.c:
	mshtml: Handle IHlinkFrame service.

2006-02-13  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Update the glOrtho between 2 rhw draws if the viewport was changed.

2006-02-13  Cyril Margorin <comargo@gmail.com>

	* dlls/x11drv/dib.c:
	x11drv: Fix X11DRV_DIB_SetImageBits and X11DRV_DIB_GetImageBits to
	check for passed image, and do not use shared memory extension for
	temporary created image.

	* dlls/x11drv/dib.c:
	x11drv: Fix X11DRV_GetDIBits to pass shared memory image to
	X11DRV_DIB_GetImageBits.

2006-02-13  Mike McCormack <mike@codeweavers.com>

	* dlls/msvcrt/exit.c:
	msvcrt: Fix a typo.

2006-02-13  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/psapi/psapi.spec:
	psapi: Fix output parameter of function GetModuleBaseName in spec
	file.

2006-02-13  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/surface.c, dlls/wined3d/volume.c:
	wined3d: Don't keep a reference to the container, as it creates a
	circular reference.

2006-02-13  Francois Gouget <fgouget@free.fr>

	* dlls/wined3d/device.c:
	wined3d: Protect float.h inclusion.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Add trailing '\n's to ok() calls.

	* include/d3dtypes.h:
	d3dtypes: Fix windows.h inclusion.

2006-02-13  Hans Leidekker <hans@it.vu.nl>

	* dlls/kernel/file.c:
	kernel: Report a tape device as FILE_TYPE_CHAR.

	* dlls/crypt32/crypt32.spec, dlls/crypt32/main.c:
	crypt32: Add a stub for CryptQueryObject.

	* dlls/netapi32/access.c:
	netapi32: Improve stub for NetUserModalsGet.
	Tell the caller this host is not part of a domain.

2006-02-13  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvideo/msvideo_main.c:
	msvfw32: Fix typos in the control state handling.
	Fix typos in the control state handling, add state checks for IDOK
	and IDCANCEL control notification handlers.

2006-02-11  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/Makefile.in, libs/wine/config.c, libs/wine/loader.c:
	libwine: Use dladdr if supported to get the run-time path of libwine.so
	and define the default dll and bin directories relative to it.

	* configure, configure.ac, include/config.h.in:
	configure: Added check for dladdr in libdl.

	* aclocal.m4, configure, configure.ac:
	configure: Added a WINE_CHECK_LIB_FUNCS macro to check for functions
	when linking with specific libraries.

2006-02-11  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/d3d_private.h, dlls/ddraw/device_main.c,
	  dlls/ddraw/device_opengl.c:
	ddraw: Small function corrections.
	The pPlaneEquation parameter of IDirect3DDevice7::SetClipPlane is not const
	IDirect3DDevice2::NextViewport takes an IDirect3DDevice2 interface, not an
	IDirect3DDevice3, the same for IDirect3DDevice::NextViewport.

	* dlls/ddraw/vertexbuffer.c:
	ddraw: ProcessVertices correction.
	Use the texture index to get the texcoord size from the fvf, not the
	vertex index.

2006-02-11  Phil Krylov <phil@newstar.rinet.ru>

	* configure, configure.ac, dlls/ntdll/tape.c:
	ntdll: Fix tape.c compilation on Darwin.

2006-02-11  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/shell32/shlview.c:
	shell32: IShellView list's control id should be 1, not 2000.

	* dlls/commdlg/filedlgbrowser.c:
	commdlg: IShellBrowser sets IShellView window's control id to 5002.

2006-02-11  Troy Rollo <wine@troy.rollo.name>

	* dlls/ntdll/cdrom.c, include/Makefile.in, include/ddk/ntddcdvd.h:
	ntdll: Implement DVD_ReadStructure.

2006-02-11  Thomas Kho <tkho@ucla.edu>

	* dlls/riched20/editor.c:
	riched20: Fixed bounds error when finding text forward.

	* configure, configure.ac, dlls/riched20/Makefile.in,
	  dlls/riched20/tests/.gitignore, dlls/riched20/tests/Makefile.in,
	  dlls/riched20/tests/editor.c:
	riched20: Added tests for EM_FINDTEXT and EM_FINDTEXTEX messages.

2006-02-11  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/shell32/shlfolder.c, dlls/shell32/tests/shlfolder.c:
	shell32: SHELL32_GetItemAttributes()
	- correct documentation which incorrectly claimed not to set any
	attribute bits
	- retrieve file attributes using SHGetPathFromIDListW() when they are
	not already present in the internal PIDL structures
	- add test case to show the previously wrong folder attributes when
	using absolute PIDLs
	- fix some memory leaks in the tests

2006-02-11  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/directx.c:
	wined3d: Make the returned driver version similar to windows.

	* dlls/wined3d/utils.c:
	wined3d: Extend debug_d3drenderstate with missing states.

2006-02-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvcrt/time.c:
	msvcrt: localtime should accept any positive time value.

	* dlls/iccvid/iccvid.c, dlls/msvidc32/msvideo1.c:
	Handle ICM_CONFIGURE request in ICCVID and MSVIDC32 codecs.

	* dlls/msvideo/msvideo_main.c, dlls/msvideo/msvideo_private.h:
	msvfw32: Call codec's Configure dialog if the codec supports it.
	Disable data rate and key frame fields if requested.

2006-02-11  Milko Krachounov <milko@3mhz.net>

	* programs/winecfg/Bg.rc:
	winecfg: Update Bulgarian translation.

2006-02-11  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/wined3d/device.c:
	wined3d: Prevent crash in setup_light.

2006-02-11  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* include/Makefile.in, include/dpnathlp.h:
	include: Add dpnathlp.h header.

2006-02-10  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/msvcrt/file.c:
	msvcrt: In _mktemp sixth generated charater always starts with 'a'.

2006-02-10  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/nodemap.c, dlls/msxml3/tests/domdoc.c:
	msxml: Add ISupportErrorInfo for named node maps.

2006-02-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/persist.c, dlls/mshtml/tests/htmldoc.c,
	  include/mshtmhst.idl:
	mshtml: Added more defines to mshtmlhst.idl.

2006-02-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/signal_i386.c:
	ntdll: Added emulation of ATL thunks for platforms with NX support.

2006-02-10  Aric Stewart <aric@codeweavers.com>

	* dlls/ntdll/tests/change.c:
	ntdll: gcc 2.95 compile fixes.

2006-02-10  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/kernel/tests/drive.c:
	kernel: Fix a GetDiskFreeSpaceExA test for cd/dvd drives.

2006-02-10  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/stateblock.c:
	wined3d: Release the vertex declaration during stateblock cleanup.

	* dlls/wined3d/surface.c, dlls/wined3d/volume.c:
	wined3d: Release the container during surface / volume cleanup.

	* dlls/d3d9/tests/shader.c, dlls/d3d9/tests/stateblock.c,
	  dlls/d3d9/tests/vertexdeclaration.c:
	d3d9: Use an invisible window for tests.

2006-02-10  Robert Shearman <rob@codeweavers.com>

	* dlls/secur32/secur32.c:
	secur32: Improve tracing.
	Improve the tracing for functions that can be called by the app, but
	bypass the relay code.

	* tools/widl/write_msft.c:
	widl: Fix a typo when removing TYPEFLAG_FDUAL.

	* dlls/oleaut32/olefont.c, dlls/oleaut32/olepicture.c,
	  dlls/shdocvw/events.c:
	Return the correct error code from IConnectionPointContainer::FindConnectionPoint.

	* dlls/oleaut32/olepicture.c:
	oleaut: Partially implement Invoke on the standard picture implementation.

	* dlls/oleaut32/typelib.c:
	oleaut: Fix importing the IDispatch interface for TKIND_DISPATCH type infos.
	Fix importing the IDispatch interface for TKIND_DISPATCH type infos
	when the offset isn't specified. It should be fetched from the
	dispatch offset stored in the header, rather than using a hack that
	doesn't work.

	* dlls/oleaut32/tests/olefont.c:
	oleaut: Add tests for IFontEventsDisp.

	* dlls/oleaut32/olefont.c:
	oleaut: Implement IFontEventsDisp connection point for the standard
	font implementation.

	* include/olectl.h:
	include: Define DISPID_FONT_CHANGED.

2006-02-10  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c:
	crypt32: Move break statement to the correct spot.

2006-02-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added test of IHlinkFrame service.

	* dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c:
	mshtml: Added nsIUploadStream implementation.

2006-02-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/regsvr32/Makefile.in, programs/regsvr32/regsvr32.c:
	regsvr32: Call OleInitialize before registering a DLL.

2006-02-09  Alexandre Julliard <julliard@winehq.org>

	* programs/Makefile.in, programs/make_progs:
	programs: Don't install winetest.

2006-02-09  Jeremy White <jwhite@codeweavers.com>

	* dlls/kernel/change.c, dlls/kernel/tests/change.c:
	kernel: Fixed build with gcc 2.95.

2006-02-09  Mike McCormack <mike@codeweavers.com>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Fix the compile for missing EV_SYN define.

2006-02-09  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/gdi/pen.c:
	gdi: Show hatch brush FIXME only once.

2006-02-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c, dlls/mshtml/nsio.c,
	  dlls/mshtml/persist.c:
	mshtml: Get rid of HTMLDocument_OnLoad and move its job to AsyncOpen.

	* dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c:
	mshtml: Added wrapper of nsIChannel.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl,
	  dlls/mshtml/nsio.c:
	mshtml: Added wrapper of nsIURI interface.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl:
	mshtml: Better ns*String handling.

	* dlls/mshtml/Makefile.in, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c:
	mshtml: Added wrapper of nsIOService.

2006-02-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	ntdll: Better handling of errors when loading a builtin dll from an
	existing file.

2006-02-09  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/query.c:
	setupapi: Error out if ReturnBuffer is NULL but ReturnBufferSize is not 0.

	* dlls/setupapi/query.c:
	setupapi: Convert InfSpec to unicode if SearchControl is not
	INFINFO_INF_SPEC_IS_HINF.

2006-02-09  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut: Make TLB_ReadTypeLib not rely on the signature of executables or dlls.
	Try loading the dll first and then fall back to the regular file case.
	Only call SearchPath for the regular file case since LoadLibraryEx
	will do this for us and it previously excluded builtin dlls and
	executables from having their type libraries opened.

	* dlls/oleaut32/typelib.c:
	oleaut: Move the call to SearchPath inside of TLB_ReadTypeLib.

	* dlls/oleaut32/typelib.c:
	oleaut: Revert incorrect patch changing the order of parameters passed
	into DispCallFunc. A test with native indeed shows that the parameter
	index increases from the leftmost parameter to the rightmost.

	* tools/widl/parser.l, tools/widl/parser.y, tools/widl/widltypes.h,
	  tools/widl/write_msft.c:
	widl: Write out more TYPEFLAGs and add more type library-specific
	attributes to the parser.

	* tools/widl/write_msft.c:
	widl: Write out TYPEFLAG_FDUAL, TYPEFLAG_FDISPATCHABLE and
	TYPEFLAG_FOLEAUTOMATION typelib flags.

2006-02-09  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c:
	crypt32: Fix up decoding.
	- don't use the no copy flag when decoding, the lifetime of the buffer
	to decode isn't guaranteed
	- remove some extraneous ternary comparisons
	- fix a comment

	* dlls/crypt32/encode.c:
	crypt32: Fix a fixme, and remove an old comment.

2006-02-09  Aric Stewart <aric@codeweavers.com>

	* dlls/advapi32/registry.c:
	advapi32: Fix for RegNotifyChangeKeyValue.
	Flip fAsync and fWatchSubTree into their proper places.

2006-02-09  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/ntdll/tape.c:
	ntdll: Take into account that FreeBSD and others have MTSETBSIZ
	instead of MTSETBLK.

2006-02-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/x11drv/keyboard.c:
	x11drv: Update Swiss French keyboard layout to better match the X11 one.

2006-02-09  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/duplex.c:
	dsound: Fix duplex test.

2006-02-09  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Dynamic handling of buttons of a device.

	* dlls/wined3d/utils.c:
	wined3d: Support for WINED3DFMT_A8B8G8R8.

	* dlls/wined3d/device.c:
	wined3d: Better warn/fixme for query handling.

2006-02-09  Hans Leidekker <hans@it.vu.nl>

	* dlls/mapi32/sendmail.c:
	mapi32: Prevent freeing non-allocated memory.

2006-02-08  Francois Gouget <fgouget@free.fr>

	* include/winuser.h:
	winuser.h: Add missing *LayeredWindow*() prototypes.

2006-02-08  Alexandre Julliard <julliard@winehq.org>

	* include/wine/server_protocol.h, server/process.c, server/protocol.def,
	  server/trace.c:
	server: Remove the no longer needed exe_file parameter in the
	init_process_done request.

	* dlls/kernel/process.c, dlls/ntdll/loader.c, include/winternl.h:
	ntdll: Get rid of the main_file argument in LdrInitializeThunk.

	* dlls/kernel/process.c:
	kernel: Use a standard LoadLibrary call to load the main exe.

	* dlls/ntdll/loader.c:
	ntdll: Check for existing modref for the main exe before creating it
	in LdrInitializeThunk.

	* server/process.c:
	server: Allow the main exe to be registered as a normal dll before
	init_process_done is called.

	* server/change.c:
	server: Fixed handling of inotify record length.

2006-02-08  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msvcrt/undname.c:
	msvcrt: __unDNameEx is not a stub.

2006-02-08  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/navigate.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Added IHlinkFrame stub implementation.

	* dlls/shdocvw/shdocvw_main.c:
	shdocvw: Includes clean up.

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/misc.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/shdocvw_main.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Remove IQuickActivate interface implementation that is not
	implemented in Windows as well.

	* include/urlmon.idl:
	urlmon.idl: Added BINDINFOF declaration.

2006-02-08  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/wineps/pen.c, dlls/x11drv/pen.c:
	Pens created without PS_GEOMETRIC style but with width > 1 unit are
	scalable.

	* dlls/gdi/path.c:
	gdi: Remove StrokePath workaround for a DC transformation change bug.

2006-02-08  Huw Davies <huw@codeweavers.com>

	* dlls/wineps/escape.c:
	wineps: Don't display the MFCOMMENT escape.

2006-02-07  Francois Gouget <fgouget@free.fr>

	* dlls/ntdll/tape.c:
	ntdll: Fix typo in HAVE_STRUCT_MTGET_MT_GSTAT ifdef.

	* dlls/shell32/shellole.c:
	shell32: Update DllGetClassObject documentation.

	* include/textserv.h:
	textserv.h: Add missing CreateTextServices() prototype.

	* dlls/ntdll/virtual.c:
	ntdll: Protect sys/stat.h inclusion.

	* tools/winapi/win32.api:
	winapi: Update win32.api to match the current sources.

2006-02-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Add a default handler for https to the registry.

	* dlls/kernel/locale.c:
	kernel32: Implement EnumUILanguages.

	* dlls/x11drv/dib_convert.c:
	x11drv: Copy the whole image at once if appropriate.

2006-02-07  Fatih Aşıcı <fasici@linux-sevenler.org>

	* dlls/x11drv/keyboard.c:
	x11drv: Fix Turkish keyboard layouts.

2006-02-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	ntdll: Support loading a builtin dll by specifying an explicit path to
	the .so file.

2006-02-07  Mike McCormack <mike@codeweavers.com>

	* programs/notepad/En.rc, programs/notepad/License_En.c,
	  programs/notepad/Makefile.in, programs/notepad/dialog.c,
	  programs/notepad/license.c, programs/notepad/license.h,
	  programs/notepad/notepad_res.h:
	notepad: Move license text to resources.

2006-02-07  Sergei Butakov <butsergej@yandex.ru>

	* dlls/ntdll/time.c:
	ntdll: Added Urals time.

2006-02-07  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	wined3d: Added CopyRects method (based on a patch by Oliver Stieber).

	* dlls/d3d8/device.c:
	d3d8: fbconfig fix.
	Right now the ActiveRender code in D3D8 requests a GLX_DEPTH_SIZE of
	32 in case the direct3d color format also has a depth of 32. As
	verified on various linux drivers (Ati fglrx, Ati (dri) and Nvidia)
	the color depth needs to be 24. This patch sets the depth to 24 and it
	fixes bugs in 3dmark2001 and other programs.

2006-02-07  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/tests/change.c:
	kernel32: More test cases for ReadDirectoryChangesW.

	* dlls/kernel/change.c, dlls/ntdll/directory.c,
	  include/wine/server_protocol.h, server/change.c, server/protocol.def,
	  server/trace.c:
	kernel32: ReadDirectoryChangesW fixes.
	ReadDirectoryChangesW remembers whether it's recording changes or not.
	Don't initialize overlapped->InternalHigh.
	The hEvent is cleared when ReadDirectoryChanges is called.

2006-02-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/crypt32/cert.c, dlls/crypt32/encode.c, dlls/ole32/rpc.c,
	  dlls/winecrt0/stub.c, dlls/winmm/driver.c, dlls/winmm/lolvldrv.c:
	Include wine/port.h in files that use exceptions.

2006-02-07  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fix circular reference count in Typelib marshaler.
	The current method of handling typelib-marshaled interfaces that derive
	from IDispatch is to query for an IDispatch pointer from the proxy, but
	this causes a circular reference count.
	Fix the reference counting by loading using the IRpcProxyBuffer of
	IDispatch without an outer unknown, so that the lifetime is controlled
	by the typelib-marshaled interface's proxy. The IDispatch proxy now
	shares the same channel as the typelib-marshaled interface, so fix up
	the stub side to handle this.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Handle VT_INT in serialize_param and deserialize_param.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Release interfaces when told to.
	Make the VT_DISPATCH and VT_UNKNOWN cases of serialize_param match the
	TKIND_INTERFACE case below by releasing their respective interfaces as
	necessary.

	* dlls/ole32/compobj.c:
	ole32: Print an error message if the apartment isn't initialised in
	CoCreateInstance.

	* tools/widl/write_msft.c:
	widl: Fix some warnings caused by making attributes const.

	* dlls/msi/sql.y:
	msi: Fix bison warnings by providing precedence rules for expressions
	and by removing a redundant expression case.

	* dlls/rpcrt4/cproxy.c:
	rpcrt4: Don't call IUnknown_AddRef if there is no outer unknown in
	StdProxy_Construct as it will just crash anyway.

2006-02-07  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/query.c, dlls/setupapi/stubs.c,
	  dlls/setupapi/tests/query.c:
	setupapi: Add an initial implementation of SetupGetInfInformation.

	* dlls/setupapi/Makefile.in, dlls/setupapi/query.c, dlls/setupapi/stubs.c:
	setupapi: Implement SetupQueryInfFileInformation.

2006-02-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/setupapi/dirid.c, dlls/setupapi/parser.c, dlls/setupapi/queue.c,
	  dlls/setupapi/setupapi_private.h:
	setupapi: Store the full name to the INF file in the inf_file structure
	(based on a patch by James Hawkins).

	* tools/widl/parser.y:
	widl: Remove '\n' from yyerror calls.

2006-02-07  Robert Shearman <rob@codeweavers.com>

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y,
	  tools/widl/widltypes.h:
	widl: Make 'attrs' field of type_t const.

	* tools/widl/parser.y, tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: Remove unused 'rname' field of type_t.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Merge marshall_arguments and unmarshall_arguments into one
	function to remove the large amount of duplicated code.

	* tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/proxy.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Yet more const attributes.

	* tools/widl/header.c, tools/widl/widltypes.h:
	widl: More const attributes.

2006-02-07  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/typegen.c:
	widl: Fix proc format string for explicit binding handles.

2006-02-07  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Write out the correct FC type if the structure has pointers.

	* tools/widl/typegen.c:
	widl: Split pointer writing into a separate function.

	* tools/widl/parser.y:
	widl: Fix pointer detection for structures with embedded arrays.
	Pointers have priority over every other type, so move the detection to
	the top of get_struct_type.
	Fall through from the embedded array detection to the embedded
	structure handling code so that conformance, variance and pointer
	presence is inherited from the array's base type.

	* tools/widl/typegen.c:
	widl: Increment the type format string when writing the pointer
	layouts.
	Write out pointer layouts for structures.

	* tools/widl/widltypes.h:
	widl: Make all pointer fields of expr_t structure constant.

2006-02-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/iccvid/iccvid.c, dlls/msvidc32/msvideo1.c:
	Clearly indicate that ICCVID and MSVIDC32 do not support compression.

	* dlls/msvideo/msvideo_main.c:
	msvideo: Add a codec to the compressors list only if it supports
	specified input format.
	Return a compressor handle in COMPVARS structure.

2006-02-07  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msvcrt/undname.c:
	msvcrt: Handle data types B,R,S in C++ symbol demangling.

2006-02-07  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/vertexdeclaration.c:
	d3d9: Add a test for IDirect3DVertexDeclaration9_GetDeclaration.

	* dlls/d3d9/tests/vertexdeclaration.c:
	d3d9: Reorganise the vertexdeclaration tests.
	- Split the test for getting and setting vertexdeclaration into one
	for creating the declaration and one for the actual getting and
	setting.
	- Add traces for when creating the device or vertexdeclaration fails.

	* dlls/wined3d/vertexdeclaration.c:
	wined3d: Always return the number of elements in the vertex
	declaration in IWineD3DVertexDeclarationImpl_GetDeclaration9.

	* dlls/wined3d/device.c:
	wined3d: Don't set the container to the device for standalone surfaces.

	* dlls/d3d9/volume.c, dlls/wined3d/volume.c:
	wined3d/d3d9: Cleanup GetContainer for volumes.

	* dlls/d3d9/surface.c, dlls/wined3d/surface.c:
	wined3d/d3d9: Cleanup GetContainer for surfaces.

2006-02-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/quartz/regsvr.c:
	quartz: Register some of the interfaces.

2006-02-06  Robert Millan <rmh@aybabtu.com>

	* configure, configure.ac, dlls/ntdll/file.c, include/config.h.in,
	  libs/port/fstatvfs.c, libs/port/statvfs.c, tools/winapi/winapi_check:
	configure: For sys/mount.h, sys/statfs.h and sys/vfs.h, always include
	them if present.

2006-02-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/Makefile.in, dlls/win32s/.gitignore, dlls/win32s/Makefile.in:
	w32skrnl: No need for an import library.

	* dlls/Makefile.in, dlls/rsabase/.gitignore, dlls/rsabase/Makefile.in:
	rsabase: No need for an import library.

2006-02-06  Gerald Pfeifer <gerald@pfeifer.com>

	* configure, configure.ac, dlls/ntdll/tape.c, include/config.h.in:
	ntdll: Use struct mtget.mt_blkno on those systems providing that (and
	avoid using struct mtpos which may not be present on such systems).

2006-02-06  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/wininet/tests/internet.c:
	wininet: Fix InternetQueryOption test to pass under Windows.

2006-02-06  Phil Lodwick <Phil.Lodwick@EFI.COM>

	* dlls/winsock/tests/sock.c:
	winsock/tests: select() conformance test improvements.
	Add OK tests around more function calls.
	Add two more todo_wine tests that fail.

2006-02-06  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/comctl32/tests/.gitignore, dlls/comctl32/tests/Makefile.in,
	  dlls/comctl32/tests/monthcal.c:
	comctl32: Add month calendar tests.

2006-02-06  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/progress.c, dlls/crypt32/tests/str.c,
	  dlls/oleaut32/variant.h, dlls/user/tests/menu.c:
	Assorted spelling fixes.

	* dlls/secur32/tests/main.c, dlls/winspool/tests/info.c:
	Add trailing '\n's to ok() and trace() calls.

	* dlls/security/security.spec:
	security: Fix the UnsealMessage() forward.

2006-02-06  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/surface.c:
	wined3d: Texture fixes.
	Set video memory capabilities, add some checks to SetTexture and
	update some comments.

2006-02-06  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: Fixes and tests for CreateDispTypeInfo.
	CreateDispTypeInfo returns the typeinfo of a coclass which implements
	the described interface.

2006-02-06  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/wininet/tests/.gitignore, dlls/wininet/tests/Makefile.in,
	  dlls/wininet/tests/internet.c:
	wininet: Add tests for InternetQueryOption.

2006-02-06  Hans Leidekker <hans@it.vu.nl>

	* dlls/mapi32/Makefile.in, dlls/mapi32/mapi32.spec,
	  dlls/mapi32/mapi32_main.c, dlls/mapi32/sendmail.c, include/mapi.h,
	  include/mapicode.h:
	mapi32: Implementation for MAPISendMail.
	Implement MAPISendMail, stub MAPILogoff and make the stubs for
	MAPIInitialize, MAPILogon{,Ex} and MAPILogoff return success.

2006-02-06  Rein Klazes <wijn@wanadoo.nl>

	* programs/wcmd/batch.c, programs/wcmd/wcmd.h, programs/wcmd/wcmdmain.c:
	wcmd: CALL should search the current PATH.

2006-02-06  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/advpack/tests/files.c, dlls/cabinet/tests/extract.c,
	  dlls/comctl32/tests/comboex.c, dlls/gdi/region.c,
	  dlls/mshtml/nsembed.c, dlls/msvcrt/tests/cpp.c,
	  dlls/msvcrt/tests/dir.c, dlls/msvcrt/tests/string.c,
	  dlls/msvcrtd/debug.c, dlls/ntdll/loader.c, dlls/ntdll/tests/time.c,
	  dlls/odbc32/proxyodbc.c, dlls/quartz/tests/memallocator.c,
	  dlls/shdocvw/tests/shortcut.c, dlls/shlwapi/ordinal.c,
	  dlls/shlwapi/stopwatch.c, dlls/user/tests/menu.c,
	  dlls/user/tests/text.c, dlls/wininet/tests/http.c,
	  include/msvcrt/crtdbg.h, loader/kthread.c, loader/preloader.c,
	  programs/notepad/main.c:
	Fixes for missing prototypes warnings.

	* include/winbase.h, libs/unicode/cptable.c, tools/wmc/mcy.y:
	A few fixes for pointer qualifiers (const, volatile) warnings.

2006-02-06  Fatih Aşıcı <fasici@linux-sevenler.org>

	* programs/winhelp/Tr.rc, programs/winhelp/rsrc.rc:
	winhelp: Turkish translation.

	* programs/winemine/Tr.rc, programs/winemine/rsrc.rc:
	winemine: Turkish translation.

	* programs/winefile/Tr.rc, programs/winefile/rsrc.rc:
	winefile: Turkish translation.

	* programs/wineconsole/wineconsole_Tr.rc,
	  programs/wineconsole/wineconsole_res.rc:
	wineconsole: Turkish translation.

	* programs/winecfg/Tr.rc, programs/winecfg/winecfg.rc:
	winecfg: Turkish translation.

	* programs/wcmd/Tr.rc, programs/wcmd/wcmdrc.rc:
	wcmd: Turkish translation.

	* programs/view/Tr.rc, programs/view/viewrc.rc:
	view: Turkish translation.

	* programs/uninstaller/Tr.rc, programs/uninstaller/rsrc.rc:
	uninstaller: Turkish translation.

	* programs/taskmgr/Tr.rc, programs/taskmgr/taskmgr.rc:
	taskmgr: Turkish translation.

	* programs/start/Tr.rc, programs/start/rsrc.rc:
	start: Turkish translation.

	* programs/regedit/Tr.rc, programs/regedit/rsrc.rc:
	regedit: Turkish translation.

	* programs/progman/Tr.rc, programs/progman/rsrc.rc:
	progman: Turkish translation.

	* programs/notepad/Tr.rc, programs/notepad/rsrc.rc:
	notepad: Turkish translation.

	* programs/cmdlgtst/Tr.rc, programs/cmdlgtst/cmdlgr.rc:
	cmdlgtst: Turkish translation.

	* programs/clock/Tr.rc, programs/clock/rsrc.rc:
	clock: Turkish translation.

	* dlls/wldap32/wldap32.rc, dlls/wldap32/wldap32_Tr.rc:
	wldap32: Turkish translation.

	* dlls/winspool/Tr.rc, dlls/winspool/winspool.rc:
	winspool: Turkish translation.

	* dlls/winmm/winmm_Tr.rc, dlls/winmm/winmm_res.rc:
	winmm: Turkish translation.

	* dlls/wininet/rsrc.rc, dlls/wininet/wininet_Tr.rc:
	wininet: Turkish translation.

	* dlls/wineps/rsrc.rc, dlls/wineps/wps_Tr.rc:
	wineps: Turkish translation.

	* dlls/user/resources/user32.rc, dlls/user/resources/user32_Tr.rc:
	user: Turkish translation.

	* dlls/shlwapi/shlwapi.rc, dlls/shlwapi/shlwapi_Tr.rc:
	shlwapi: Turkish translation.

	* dlls/shell32/shell32_Tr.rc, dlls/shell32/shres.rc:
	shell32: Turkish translation.

	* dlls/shdocvw/Tr.rc, dlls/shdocvw/shdocvw.rc:
	shdocvw: Turkish translation.

	* dlls/setupapi/Tr.rc, dlls/setupapi/setupapi.rc:
	setupapi: Turkish translation.

	* dlls/serialui/Tr.rc, dlls/serialui/serialui_rc.rc:
	serialui: Turkish translation.

	* dlls/oledlg/oledlg_Tr.rc, dlls/oledlg/rsrc.rc:
	oledlg: Turkish translation.

	* dlls/oleaut32/oleaut32.rc, dlls/oleaut32/oleaut32_Tr.rc:
	oleaut32: Turkish translation.

	* dlls/msvideo/msvfw32_Tr.rc, dlls/msvideo/rsrc.rc:
	msvideo: Turkish translation.

	* dlls/msvidc32/msvidc32_Tr.rc, dlls/msvidc32/rsrc.rc:
	msvidc32: Turkish translation.

	* dlls/msrle32/msrle_Tr.rc, dlls/msrle32/rsrc.rc:
	msrle32: Turkish translation.

	* dlls/msi/msi.rc, dlls/msi/msi_Tr.rc:
	msi: Turkish translation.

	* dlls/mshtml/Tr.rc, dlls/mshtml/rsrc.rc:
	mshtml: Turkish translation.

	* dlls/msacm/msacm.rc, dlls/msacm/msacm_Tr.rc:
	msacm: Turkish translation.

	* dlls/mpr/mpr.rc, dlls/mpr/mpr_Tr.rc:
	mpr: Turkish translation.

	* dlls/iccvid/iccvid_Tr.rc, dlls/iccvid/rsrc.rc:
	iccvid: Turkish translation.

	* dlls/hhctrl.ocx/Tr.rc, dlls/hhctrl.ocx/hhctrl.rc:
	hhctrl.ocx: Turkish translation.

	* dlls/commdlg/cdlg_Tr.rc, dlls/commdlg/rsrc.rc:
	commdlg: Turkish translation.

	* dlls/comctl32/comctl_Tr.rc, dlls/comctl32/rsrc.rc:
	comctl32: Turkish translation.

	* dlls/avifil32/avifile_Tr.rc, dlls/avifil32/rsrc.rc:
	avifil32: Turkish translation.

2006-02-06  Mike McCormack <mike@codeweavers.com>

	* dlls/ntdll/tests/change.c:
	ntdll: Add some more tests for NtNotifyChangeDirectoryFile.

	* dlls/kernel/change.c, dlls/ntdll/directory.c,
	  include/wine/server_protocol.h, server/change.c, server/protocol.def,
	  server/request.h, server/trace.c:
	server: Fill in NtNotifyChangeDirectoryFile's buffer with change data.

2006-02-06  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/kernel/tests/.gitignore, dlls/kernel/tests/Makefile.in,
	  dlls/kernel/tests/volume.c:
	kernel: Added a test for QueryDosDeviceA.

2006-02-06  Alexander N. Sørnes <alex@thehandofagony.com>

	* programs/clock/No.rc, programs/progman/No.rc, programs/winecfg/No.rc,
	  programs/winefile/No.rc:
	Norwegian Bokmål updates.

2006-02-06  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll: Implemented IOCTL for char transmission: IMMEDIATE_CHAR.

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll: Implemented COMM IOCTL for modem status: GET_MODEMSTATUS.

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll: Implemented IOCTL for serial: SET_WAIT_MASK, GET_WAIT_MASK.

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll: Implemented IOCTL purge for serial objects.

2006-02-06  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/basetexture.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/indexbuffer.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/query.c, dlls/wined3d/resource.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/texture.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c:
	wined3d: Update the QueryInterface functions of IWineD3DBase subclasses.

	* dlls/wined3d/stateblock.c:
	wined3d: Update refcounts when storing references in IWineD3DStateBlockImpl_Capture.
	Move TRACEs to the top of their code blocks.

	* dlls/wined3d/device.c:
	wined3d: Release the correct vertexdeclaration in
	IWineD3DDeviceImpl_SetVertexDeclaration.

	* dlls/wined3d/device.c:
	wined3d: Also update reference counts when we're recording a stateblock.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c, dlls/wined3d/volume.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: Fix SetContainer.
	Add/Release references to the container.
	Change the type of the container from IUnknown to IWineD3DBase.

	* dlls/wined3d/drawprim.c:
	wined3d: Downgrade a FIXME to a TRACE.

2006-02-06  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/stabs.c, dlls/dbghelp/symbol.c,
	  programs/winedbg/debugger.h, programs/winedbg/memory.c,
	  programs/winedbg/stack.c, programs/winedbg/symbol.c:
	winedbg: Added support for function parameters passed in registers.
	Added correct stabs parsing for function parameters in registers.
	Added a couple of helper functions to make code smaller and more
	readable.

	* dlls/kernel/atom.c, dlls/kernel/tests/atom.c, dlls/ntdll/tests/atom.c:
	kernel: Fixed regression in atom handling.
	Added proper tests (local & global functions).

2006-02-06  Kevin Koltzau <kevin@plop.org>

	* dlls/riched20/editor.c:
	riched20: Don't use EM_STREAMIN for paste.

2006-02-06  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/commdlg/fontdlg.c:
	commdlg: Add font sizes 6 and 7 to font select dialog.

2006-02-06  Paul Vriens <Paul.Vriens@xs4all.nl>

	* programs/winecfg/Nl.rc:
	winecfg: Update Dutch resources.

2006-02-06  Henning Gerhardt <henning.gerhardt@web.de>

	* programs/winecfg/De.rc:
	winecfg: Update German resource.

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

	* configure, configure.ac, dlls/ntdll/tape.c, include/config.h.in:
	ntdll: Use struct mtget.mt_blksiz on systems featuring this.
	Work around using struct mtget.mt_gstat on systems lacking this.

2006-02-05  Robert Millan <rmh@aybabtu.com>

	* configure, configure.ac, dlls/kernel/heap.c, dlls/ntdll/directory.c,
	  dlls/ntdll/file.c, dlls/ntdll/signal_i386.c, dlls/winsock/socket.c,
	  libs/wine/ldt.c, libs/wine/mmap.c, server/context_i386.c:
	Enable for GNU/kFreeBSD the same kernel-specific interface/parameter
	that is used with FreeBSD.

2006-02-05  Kevin Koltzau <kevin@plop.org>

	* dlls/riched20/editstr.h, dlls/riched20/writer.c:
	riched20: Separate stream state from editor state.
	Somewhat improves thread safety.

	* dlls/riched20/editor.h, dlls/riched20/writer.c:
	riched20: Add method to stream data based on a range.

	* dlls/riched20/editor.c:
	riched20: Don't use EM_STREAMOUT for copy/cut.

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

	* dlls/kernel/process.c, include/wine/server_protocol.h, server/process.c,
	  server/protocol.def, server/trace.c:
	server: Remove no longer used create_flags from get_startup_info request.

	* dlls/kernel/kernel_main.c, dlls/kernel/process.c:
	kernel: Use a magic ConsoleHandle value instead of create flag to pass
	the CREATE_NEW_CONSOLE flag to the child.

	* dlls/kernel/kernel_main.c, dlls/kernel/process.c:
	kernel: Set the console flag in the parent for CREATE_NEW_PROCESS_GROUP.

	* server/change.c:
	server: Fixed compile without inotify.

2006-02-05  YunSong Hwang <hys545@dreamwiz.com>

	* programs/winecfg/Ko.rc:
	winecfg: Updated the Korean translation.

2006-02-05  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, include/wine/wined3d_gl.h:
	wined3d: Use GL_EXTCALL to call OpenGL extension glPointParameterfvARB.

	* dlls/d3d8/d3dcore_gl.h, dlls/d3d8/device.c:
	d3d8: Use GL_EXTCALL to call OpenGL extension glPointParameterfvARB.

	* dlls/d3d8/directx.c:
	d3d8: Add detection for GL_ARB_point_parameters support.

2006-02-05  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/editor.c:
	riched20: Empty undo stack after EM_STREAMIN without SFF_SELECTION flag.

2006-02-05  Henning Gerhardt <henning.gerhardt@web.de>

	* dlls/commdlg/cdlg_De.rc:
	commdlg: Update German resource.

2006-02-05  Juan Lang <juan@codeweavers.com>

	* dlls/crypt32/tests/str.c:
	crypt32: Fix Mingw compile.

2006-02-04  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/d3d8/device.c:
	d3d8: Fixed point sprite scaling when size < 1.0f.

	* dlls/d3d8/device.c:
	d3d8: Fixed POINTSPRITEENABLE.

	* dlls/d3d8/device.c:
	d3d8: Fixed POINTSCALEENABLE.

	* dlls/wined3d/device.c:
	wined3d: Fixed point sprite scaling when size < 1.0f.

2006-02-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loadorder.c:
	ntdll: Added a few helper function to simplify the loadorder code.
	Keep the application key open, it's valid for the lifetime of the
	process.

	* programs/winecfg/En.rc, programs/winecfg/libraries.c,
	  programs/winecfg/resource.h:
	winecfg: Display a warning when the user tries to change the load
	order of a system dll.

	* programs/winecfg/libraries.c:
	winecfg: Populate the dll combo box with the dlls found in the load path.

	* include/wine/library.h, libs/wine/loader.c, libs/wine/wine.def,
	  libs/wine/wine.map:
	libwine: Added wine_dll_enum_load_path function to allow querying the dll path.

2006-02-04  Kasper Sandberg <redeeman@metanurb.dk>

	* dlls/shell32/shell32_Da.rc, programs/clock/Da.rc,
	  programs/notepad/Da.rc, programs/progman/Da.rc,
	  programs/winhelp/Da.rc:
	Danish language update.

2006-02-04  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h,
	  dlls/riched20/editstr.h, dlls/riched20/list.c, dlls/riched20/paint.c,
	  dlls/riched20/para.c, dlls/riched20/reader.c, dlls/riched20/run.c,
	  dlls/riched20/writer.c:
	riched20: Initial support for simple tables.

	* dlls/riched20/editor.h, dlls/riched20/run.c, dlls/riched20/wrap.c:
	riched20: Removed an unused parameter.

	* dlls/riched20/caret.c:
	riched20: Simplified ME_InsertGraphicsFromCursor() function.

	* dlls/riched20/run.c:
	riched20: Fixed undo stack corruption.

2006-02-04  Mike McCormack <mike@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: Remove FIXME messages from some implemented functions.

	* programs/clock/En.rc, programs/clock/License_En.c,
	  programs/clock/Makefile.in, programs/clock/clock_res.h,
	  programs/clock/license.c, programs/clock/license.h,
	  programs/clock/main.c:
	Clock: Load license text from resources.

2006-02-04  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvideo/msvideo_main.c:
	msvfw32: Do not overwrite fccType in the codec enumeration proc.

2006-02-04  Neil Skrypuch <ns03ja@brocku.ca>

	* programs/winecfg/drive.c:
	winecfg: Use already existing letter_to_index().

2006-02-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c:
	wined3d: Add a break which got lost in the POINTSCALEENABLE fix.

2006-02-03  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Add architecture for generating pointer layouts.

2006-02-03  Alexandre Julliard <julliard@winehq.org>

	* tools/wine.inf:
	wine.inf: Make FourCC codes uppercase again until we can figure out
	why lowercase doesn't work right.

2006-02-03  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/typegen.c:
	widl: The 'string' attribute can also be used with unsigned characters.

2006-02-03  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Restrict stubless FC types to the range of the type function table.

	* dlls/rpcrt4/ndr_midl.c:
	rpcrt4: Raise exceptions in NdrSendReceive if I_RpcSendReceive failed.

	* include/wine/rpcfc.h:
	include: Move all of the contiguous FC types together so we can see
	possible missing constants better.

	* include/rpcndr.h:
	include: Add function declarations for the Range type.

2006-02-03  Mike McCormack <mike@codeweavers.com>

	* include/winnt.h:
	ntdll: Add FILE_ACTION and FILE_NOTIFY_CHANGE_ defines for streams.

2006-02-03  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/wined3d/device.c:
	wined3d: Fixed WINED3DRS_POINTSPRITEENABLE.

	* dlls/wined3d/device.c:
	wined3d: Corrected implementation of WINED3DRS_POINTSCALEENABLE.

	* dlls/wined3d/device.c:
	wined3d: Implemented WINED3DRS_EDGEANTIALIAS.

	* dlls/wined3d/device.c:
	wined3d: Implemented WINED3DRS_MULTISAMPLEANTIALIAS.

2006-02-03  Robert Millan <rmh@aybabtu.com>

	* dlls/ntdll/signal_i386.c, dlls/ntdll/signal_x86_64.c:
	ntdll: Rename i386 CPU trap codes to avoid collision with system headers.

2006-02-03  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	ole: Initialize a few more funcdesc members in CreateDispTypeInfo.

2006-02-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/iccvid/iccvid.c, dlls/msrle32/msrle32.c, dlls/msvidc32/msvideo1.c,
	  dlls/msvideo/msvideo_main.c:
	Add a check for icinfo->fccType in DRV_OPEN message handler of builtin
	video codecs.

	* tools/wine.inf:
	wine.inf: Change fcc type of builtin video codecs in system.ini to be
	equal to ICTYPE_VIDEO.

	* dlls/commdlg/filedlg.c:
	Add support for CDM_HIDECONTROL message in the file open dialog.

2006-02-03  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/oid.c:
	crypt32: Add stub for CryptEnumOIDInfo.

2006-02-02  Alexandre Julliard <julliard@winehq.org>

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

----------------------------------------------------------------
2006-02-02  Phil Lodwick <Phil.Lodwick@efi.com>

	* dlls/winsock/tests/sock.c:
	winsock/tests: Add a todo_wine test for select.

2006-02-02  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool/tests: Filter more results.

2006-02-02  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/wined3d/directx.c:
	wined3d: Added support for ARB_POINT_PARAMETERS.

2006-02-02  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/gdi/freetype.c:
	gdi: Slant font automatically if no italic variant exists.

2006-02-02  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winecfg/Bg.rc, programs/winecfg/Cs.rc, programs/winecfg/De.rc,
	  programs/winecfg/En.rc, programs/winecfg/Es.rc,
	  programs/winecfg/Fi.rc, programs/winecfg/Fr.rc,
	  programs/winecfg/It.rc, programs/winecfg/Ja.rc,
	  programs/winecfg/Ko.rc, programs/winecfg/Nl.rc,
	  programs/winecfg/No.rc, programs/winecfg/Pt.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/resource.h,
	  programs/winecfg/x11drvdlg.c:
	winecfg: Remove color depth. It's source of problems for number of users.

2006-02-02  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shellpath.c:
	shell32: Create $HOME targeted symbolic links during SHELL_RegisterFolders.

	* dlls/shell32/shell32_Bg.rc, dlls/shell32/shell32_De.rc,
	  dlls/shell32/shell32_En.rc, dlls/shell32/shell32_Es.rc,
	  dlls/shell32/shell32_Fi.rc, dlls/shell32/shell32_Fr.rc,
	  dlls/shell32/shell32_Ko.rc, dlls/shell32/shell32_No.rc,
	  dlls/shell32/shell32_Pt.rc, dlls/shell32/shell32_Ru.rc:
	shell32: Move 'My Pictures', 'My Videos' and 'My Music' folders
	directly to %USERPROFILE% (instead of %USERPROFILE%\\My Documents), to
	allow for reasonable symbolic linking to $HOME based directories.

	* dlls/shell32/shellpath.c:
	shell32: Get rid of the magic MyDocuments->$HOME mapping code.

2006-02-02  Huw Davies <huw@codeweavers.com>

	* dlls/opengl32/opengl_ext.h, dlls/opengl32/wgl.c, dlls/x11drv/init.c,
	  dlls/x11drv/x11drv.h:
	opengl: Sync a dibsection to its pixmap before drawing to it via opengl.

2006-02-02  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c:
	widl: Some cosmetic fixes in generated code.

	* tools/widl/widl.c:
	widl: Make sure the token variables are always initialized properly.

2006-02-02  Johan Dahlin <jdahlin@async.com.br>

	* dlls/ntdll/ntdll.spec, dlls/ntdll/rtl.c:
	ntdll: RtlIpv4AddressToStringExW/RtlIpv4StringToAddressExW stubs.

2006-02-02  Tobias Loew <tobi@die-loews.de>

	* dlls/gdi/path.c:
	gdi: Extended pens do not work correct with StrokePath.

2006-02-02  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/change.c:
	kernel32: FindFirstChangeNotification needs a static IO_STATUS_BLOCK.

2006-02-02  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	unixfs: Use realpath instead of canonicalize_file_name for portability
	reasons.

2006-02-02  Stefan Leichter <Stefan.Leichter@camLine.com>

	* tools/wine.inf:
	wine.inf: Add HKLM,%CurrentVersionNT%,"CurrentType".

2006-02-02  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/commdlg/filedlg.c:
	commdlg: File open dialog: Use the specified instance handle for
	custom dialog templates.

2006-02-02  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Added stub for ShellMessageBoxWrapW.

2006-02-02  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c:
	crypt32: Support external providers.
	- add support for external store providers
	- rewrite registry stores as a provider
	- fix a memory leak

2006-02-02  Juan Lang <juan@codeweavers.com>

	* dlls/crypt32/str.c, dlls/crypt32/tests/str.c:
	crypt32: Implement CertRDNValueToStrW and CertNameToStrW, with tests.

2006-02-02  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/security.c:
	advapi32: Add stub for ObjectDeleteAuditAlarmW.

	* dlls/oleaut32/variant.c:
	oleaut32: Prevent freeing of random memory.
	Don't assign type to variant until we're sure we are assigning a
	value.

2006-02-02  Kevin Koltzau <kevin@plop.org>

	* dlls/riched20/editor.c:
	riched20: Handle context menu.

2006-02-01  Fatih Aşıcı <fasici@linux-sevenler.org>

	* programs/start/start.c:
	start.exe: build_args now returns the correct string when no parameter
	is passed.

	* dlls/x11drv/keyboard.c:
	x11drv: Added Turkish F keyboard layout.

2006-02-01  Juan Lang <juan@codeweavers.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/crypt32.spec, dlls/crypt32/str.c,
	  dlls/crypt32/tests/.gitignore, dlls/crypt32/tests/Makefile.in,
	  dlls/crypt32/tests/str.c:
	crypt32: Implement CertRDNValueToStrA and CertNameToStrA, with tests.

2006-02-01  Kevin Koltzau <kevin@plop.org>

	* dlls/riched20/editor.c, dlls/riched20/editstr.h:
	riched20: Implement EM_SETOLECALLBACK.

2006-02-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Remove %1 from [http|htmlfile]\shell\open\command.

2006-02-01  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c, dlls/winspool/tests/info.c:
	winspool: Empty string as environment is valid, with tests.

	* include/winspool.h:
	winspool.h: Add missing declarations.

2006-02-01  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/riched20/Makefile.in, dlls/riched20/editor.c,
	  dlls/riched20/txtsrv.c:
	riched20: Implement CreateTextServices.
	Implement a stub interface that CreateTextServices returns.

2006-02-01  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/style.c:
	riched20: Fixed font cache corruption.

2006-02-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/wineps/pen.c, dlls/x11drv/pen.c:
	Translate pen width from logical units only for geometric pens.

	* dlls/shell32/shlexec.c:
	shell32: execute_from_key should fallback to a DDE exec only if the
	command to execute from is not found in the registry.
	Pass already found executable name to dde_connect.

2006-02-01  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Fix a SEGV when using arrays declared using a pointer and
	attributes, instead of array indices (reported by Eric Kohl).

2006-01-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/setupapi/tests/.gitignore:
	setupapi: Ignore ok file for new query test.

2006-01-31  Mike McCormack <mike@codeweavers.com>

	* programs/winefile/En.rc, programs/winefile/Makefile.in,
	  programs/winefile/license.c, programs/winefile/resource.h,
	  programs/winefile/winefile.c, programs/winefile/winefile.h:
	winefile: Move the license and warranty text into the resources.

2006-01-31  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Changes to output for better debugability.
	Write the offset and the absolute address for referenced types.
	Write the current offset out when writing a pointer type.

	* tools/widl/typegen.c:
	widl: Clean up conformant struct handling.
	Make the writing of conformant structures take advantage of the new
	type format string offset handling.

	* tools/widl/typegen.c:
	widl: Fix the writing of arrays with size specified in the array
	expression instead of the size_is expression.

	* tools/widl/typegen.c:
	widl: Improve the current type offset passing.
	Change the functions to take the current type offset and return the
	start of the type written.

	* tools/widl/typegen.c:
	widl: The stack/structure offset in correlation descriptors should be a short.

	* tools/widl/parser.y:
	widl: Do constant folding for the sizeof operator on simple types.

	* tools/widl/header.c, tools/widl/typegen.c:
	widl: Support client/server generation for explicit_handle interfaces
	(based on a patch by Eric Kohl).

	* tools/widl/typegen.c:
	widl: Implement constant conformance.

	* tools/widl/client.c, tools/widl/server.c:
	widl: Fix the type offset used in marshaling/unmarshaling.
	Make a copy of type_offset so that it only gets incremented once per
	function, instead of twice.

	* tools/widl/write_msft.c:
	widl: Implement the writing of defaultvalue constants for enum values.

	* include/winsvc.h:
	include: Add SC_ENUM_TYPE to winsvc.h.

	* dlls/stdole2.tlb/std_ole_v2.idl:
	stdole2.tlb: Remove hack due to unimplemented widl functionality.

2006-01-31  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	unixfs: Only append '/' to base path if not already present in
	UNIXFS_get_unix_path.

2006-01-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/change.c:
	kernel: Set the overlapped structure status in ReadDirectoryChanges.

2006-01-31  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/ntdll/tape.c:
	ntdll: tape.c portability fixes.
	Accept MTCOMP as an alias for MTCOMPRESSION on those systems, having
	the former, but not the latter.
	Only enable operations supported by the host OS in
	TAPE_CreatePartition() and TAPE_Prepare().

2006-01-31  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h,
	  dlls/riched20/editstr.h, dlls/riched20/paint.c, dlls/riched20/run.c,
	  dlls/riched20/style.c:
	riched20: Added support for hidden text.

	* dlls/riched20/caret.c:
	riched20: Paint the selection while it's being extended by dragging.

2006-01-31  Tobias Loew <tobi@die-loews.de>

	* dlls/gdi/path.c:
	gdi: viewportExt changed after call to StrokePath.

2006-01-31  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/gdi/enhmetafile.c, dlls/gdi/mapping.c, dlls/gdi/tests/mapping.c:
	gdi: Fixes for the isotropic mapping mode.
	- Isotropic mapping mode: Adjust the viewport extension in
	SetWindowExtEx, handle negative extents.
	- Support the isotropic mapping mode in the enhanced metafile driver.
	- New tests.

2006-01-31  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Use a macro to write out FC types, along with the current offset
	which is useful for debugging.

	* tools/widl/typegen.c:
	widl: Pass the current type format string offset through all type
	writing functions.

	* tools/widl/typegen.c:
	widl: Eliminate redundant callback routines.
	Add a function for comparing expressions and use it to eliminate
	redundant callback functions.

	* include/wine/rpcfc.h:
	widl: Define a value for RPC_FC_WSTRING.

2006-01-31  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winecfg/x11drvdlg.c:
	winecfg: Default for PixelShaders is disabled.

2006-01-31  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/tests/Makefile.in, dlls/setupapi/tests/query.c:
	setupapi: Add tests for SetupGetInfInformation.

	* include/setupapi.h:
	setupapi: Add definitions for the SetupGetInfInformation search flags.

2006-01-31  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/tests/change.c:
	kernel: Add some test cases for ReadDirectoryChangesW.

2006-01-31  Juan Lang <juan@codeweavers.com>

	* dlls/crypt32/encode.c, dlls/crypt32/tests/encode.c:
	crypt32: Correct X509_NAME decoding, and more stringent tests.

	* include/wincrypt.h:
	wincrypt: Fix typo.

2006-01-31  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/comctl32/listview.c:
	comctl32: Restore listview font on CDRF_NEWFONT.

2006-01-31  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut: Dump the pointer for VT_ARRAY/VT_VECTOR typed variants.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Handle the RPC_FC_PROC_BYVAL flag correctly in stubless
	proxies and stubs.

	* dlls/rpcrt4/ndr_ole.c:
	rpcrt4: Only attempt to marshal an object if it is non-NULL.

2006-01-31  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	unixfs: Only resolve the 'dosdevices' based symbol links in
	UNIXFS_get_unix_path, but leave all others alone.

2006-01-30  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/enhmfdrv/objects.c, dlls/gdi/gdiobj.c,
	  dlls/gdi/mfdrv/objects.c, dlls/gdi/pen.c, dlls/gdi/tests/gdiobj.c,
	  dlls/wineps/pen.c, dlls/x11drv/pen.c, include/gdi.h:
	gdi: Add support for creating extended pens.

2006-01-30  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/d3d8/directx.c:
	d3d8: CreateDevice should use the root of the current window.

2006-01-30  Marcus Meissner <marcus@jet.franken.de>

	* dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Allocate space enough to handle all the possible ipv4 addresses.

2006-01-30  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/riched20/editor.c, include/textserv.h:
	riched20: Make CreateTextServices use ITextHost.

2006-01-30  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/message.c:
	user: Remove internal messages from the message queue before handling them.

2006-01-30  José Manuel Ferrer Ortiz <jmfo1982@yahoo.es>

	* programs/winecfg/Es.rc:
	winecfg: Spanish translation update.

2006-01-30  Mike McCormack <mike@codeweavers.com>

	* server/change.c:
	server: Initial inotify support.

	* dlls/kernel/tests/change.c:
	kernel: Add some more tests for FindFirstChangeNotification.

2006-01-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/comctl32/treeview.c, dlls/user/uitools.c:
	Fixed creation of PS_ALTERNATE pens.

2006-01-30  Tobias Loew <tobi@die-loews.de>

	* dlls/comctl32/tab.c:
	comctl32: Fix tab-control flickering.

2006-01-30  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/x11drv/xrender.c:
	x11drv: Fix AlphaBlend read boundaries.

2006-01-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/database.c, dlls/msi/msi.spec, include/msiquery.h:
	msi: Add an implementation of MsiGetDatabaseState.

2006-01-30  Juan Lang <juan@codeweavers.com>

	* include/wincrypt.h:
	wincrypt.h: Add more missing defines.

2006-01-30  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/hook.c:
	user: Remove duplicate code.

	* dlls/user/tests/msg.c:
	user/tests: Add test for low level mouse hooks.

2006-01-30  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/cpsf.c, dlls/rpcrt4/cpsf.h, dlls/rpcrt4/cstub.c:
	rpcrt4: Fill in the IRpcStubBuffer vtables for interfaces that don't
	already have them filled in.

	* dlls/oleaut32/typelib.c:
	oleaut: Fix the order of parameters passed into DispCallFunc.

2006-01-30  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/ntdll/tape.c:
	kernel: Remove bogus breaks in tape.c

2006-01-27  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/element.c, dlls/msxml3/factory.c,
	  dlls/msxml3/node.c, dlls/msxml3/nodelist.c, dlls/msxml3/nodemap.c,
	  dlls/msxml3/parseerror.c:
	msxml: Issue a fixme if the interface is not implemented.

2006-01-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/pen.c, dlls/gdi/tests/gdiobj.c:
	gdi: Add test case for creating pens, make it pass under Wine for
	cosmetic pens.

2006-01-27  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/change.c:
	kernel: Partially implement ReadDirectoryChangesW using NtNotifyChangeDirectoryFile.

2006-01-27  Juan Lang <juan_lang@yahoo.com>

	* dlls/iphlpapi/ifenum.c, dlls/iphlpapi/ifenum.h,
	  dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Reimplement interface enumeration.
	Implement interface enumeration based on if_nameindex, based on a
	suggestion by Michael Ost

2006-01-27  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/sysparams.c, dlls/user/tests/sysparams.c:
	user: Fix SPI_{G|S}ETFONTSMOOTHING with tests.

2006-01-27  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/lcformat.c, dlls/kernel/profile.c, dlls/ntdll/tests/path.c,
	  dlls/ntdll/tests/reg.c, libs/wine/debug.c:
	Fix a couple of bugs spotted by valgrind.

	* dlls/ntdll/signal_i386.c, server/console.c, server/fd.c,
	  server/request.c:
	Suppress some false-positives reported by valgrind.

	* programs/winedbg/break.c, programs/winedbg/dbg.y,
	  programs/winedbg/debug.l, programs/winedbg/debugger.h,
	  programs/winedbg/winedbg.c:
	winedbg: Hardware breakpoints
	- implemented hardware assisted breakpoints (new 'hbreak' command
	which behaves just as 'break' command)
	- small improvements to break handling (saving hit xpoint across
	exception handling)
	- fixed 'cont N' command for watchpoints

2006-01-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/file.c, dlls/kernel/path.c, dlls/kernel/tests/file.c,
	  dlls/ntdll/file.c, dlls/ntdll/tests/change.c, server/fd.c:
	server: Make the FILE_SHARE_DELETE sharing checks depend on DELETE
	access instead of on the FILE_DELETE_ON_CLOSE flag (based on a patch
	by Mike McCormack).

	* dlls/shell32/shlfileop.c:
	shell32: Fixed a couple of FindFirstFile handle leaks.

	* dlls/oleaut32/tests/.gitignore:
	oleaut32: Ignore new test ok file.

2006-01-27  Huw Davies <huw@codeweavers.com>

	* dlls/user/tests/edit.c:
	user: Don't automatically add a bunch of styles in create_editcontrol.

2006-01-27  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/tests/text.c, dlls/user/text.c:
	user: Fix DrawTextExA/W on empty strings.
	DrawTextExA/W should calculate a rectangle of zero height and width in
	some cases of null or empty supplied strings. With conformance tests.

2006-01-27  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/change.c:
	kernel32: Implement FindFirstChangeNotification with NtNotifyChangeDirectoryFile.

2006-01-27  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/oleaut32.spec, dlls/oleaut32/tests/Makefile.in,
	  dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	ole: Test and implement LPSAFEARRAY marshaling.

	* dlls/oleaut32/tmarshal.c:
	oleaut: Improve the typelib marshaler traces.
	Improve the typelib marshaler traces for lazy developers like me who
	don't want to grep for constants.

	* include/rpcndr.h:
	include: Add types and definitions for RPC user callback routines.

	* include/propidl.idl:
	include: Add new union cases for PROPVARIANT structure.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Implement callback conformance.

2006-01-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/riched20/paint.c:
	riched20: Remove a couple of no longer used functions.

2006-01-27  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/change.c, dlls/ntdll/directory.c, dlls/ntdll/tests/change.c,
	  include/wine/server_protocol.h, server/change.c, server/file.c,
	  server/file.h, server/protocol.def, server/request.h, server/trace.c:
	server: Fix the file notification interface to use directory handles.

2006-01-27  Alexandre Julliard <julliard@winehq.org>

	* server/hook.c:
	server: Fixed low-level hardware hooks.
	The hook thread field has been reused for win events, so it no longer
	works for low-level hardward hooks. Use the owner field instead.

2006-01-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/scroll.c:
	user: Postpone resetting SCROLL_TrackingWin untill all notifications are sent.

2006-01-27  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/wineoss/audio.c:
	wineoss: Proper support in OSS driver for audio when no mixer is present.
	Fixed a couple of potential fd leaks.

2006-01-27  Hans Leidekker <hans@it.vu.nl>

	* dlls/kernel/tape.c:
	kernel: Implementation of tape functions.
	Implement CreateTapePartition, EraseTape, GetTapeParameters,
	GetTapePosition, GetTapeStatus, PrepareTape, SetTapeParameters,
	SetTapePosition and WriteTapemark.

2006-01-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/client.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Added client site's IDispatch stub implementation.

	* dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser's IOleCommandTarget stub implementation.

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Added client site's IOleCommandTarget stub implementation.

2006-01-26  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/editor.c:
	riched20: EM_STREAMIN should send a EN_UPDATE notification.

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/paint.c:
	riched20: Selection painting fixes.

2006-01-26  Hans Leidekker <hans@it.vu.nl>

	* configure, configure.ac, dlls/ntdll/Makefile.in, dlls/ntdll/file.c,
	  dlls/ntdll/ntdll_misc.h, dlls/ntdll/tape.c, include/config.h.in:
	ntdll: Add implementation of tape IOCTLs.

	* include/Makefile.in, include/ddk/ntddtape.h, include/winbase.h,
	  include/winnt.h:
	include: Add some defines related to tape support.

2006-01-26  Mike McCormack <mike@codeweavers.com>

	* loader/preloader.c:
	preloader: Allow compiling the preloader with -fstack-protector.

2006-01-25  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/tests/win.c, dlls/user/win.c:
	user: Don't drop owned windows in WIN_EnumChildWindows.
	Add a few tests for this.

2006-01-25  Alexandre Julliard <julliard@winehq.org>

	* server/fd.c, server/file.c:
	server: Allow opening a directory with write access (based on a patch
	by Mike McCormack).

	* include/wtypes.idl:
	wtypes: Don't specify alignment for DOUBLE and DATE on MSVC.

	* tools/wine.inf:
	wine.inf: Don't overwrite registry keys that users may want to change.

	* dlls/kernel/dosmem.c, dlls/kernel/kernel_private.h:
	kernel: Handle a failure to load winedos a bit more gracefully.

	* dlls/x11drv/bitblt.c:
	x11drv: Always set GC function to GXcopy for the BitBlt DIB optimization.

2006-01-25  Mike Frysinger <vapier@gentoo.org>

	* tools/winegcc/winegcc.c:
	winegcc: Pass -m32/-m64 along to the linker.

2006-01-25  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/duplex.c:
	dsound: Duplex test fix.

2006-01-25  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/dochost.c:
	shdocvw: Added TranslateUrl implementation.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/oleobject.c,
	  dlls/shdocvw/shdocvw.h:
	shdocvw: Store IDocHostUIHandler interface in the WebBrowser object.

2006-01-25  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/static.c:
	static control: SS_CENTERIMAGE fixes.
	- Stretch bitmaps and icons to the whole control size if
	SS_CENTERIMAGE is absent
	- Draw the background of centered bitmaps and icons with the
	background brush (like Windows XP for applications with a manifest)

	* dlls/gdi/enhmfdrv/init.c:
	gdi: Fix the EMF bounding box calculation.

2006-01-25  Juan Lang <juan_lang@yahoo.com>

	* dlls/iphlpapi/ifenum.c, dlls/iphlpapi/ifenum.h,
	  dlls/iphlpapi/iphlpapi_main.c, dlls/iphlpapi/ipstats.c,
	  dlls/iphlpapi/ipstats.h:
	iphlpapi: Remove one IP address per interface restriction.
	- remove restriction of one IP address per interface
	- remove dead code, and make static functions that can be
	- update comments and copyright notice

2006-01-25  Hans Leidekker <hans@it.vu.nl>

	* dlls/kernel/tests/change.c:
	kernel: Test moving a directory that has a change notification
	registered for itself.

2006-01-24  Alexandre Julliard <julliard@winehq.org>

	* loader/pthread.c:
	loader: Detect pthread_get_stackaddr_np returning the top of the stack
	instead of the base.

2006-01-24  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c:
	msxml: Implement save.

2006-01-24  Mike McCormack <mike@codeweavers.com>

	* programs/progman/En.rc, programs/progman/License_En.c,
	  programs/progman/Makefile.in, programs/progman/license.c,
	  programs/progman/license.h, programs/progman/main.c,
	  programs/progman/progman.h:
	progman: Load license from resources.

2006-01-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/errno.c:
	msvcrt: Make error strings static.

2006-01-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/tests/comboex.c, dlls/comctl32/tests/progress.c,
	  dlls/dbghelp/symbol.c, dlls/kernel/comm.c,
	  dlls/msacm/winemp3/common.c, dlls/msi/dialog.c, dlls/msi/helpers.c,
	  dlls/ntdll/atom.c, dlls/oleaut32/oleaut.c,
	  dlls/oleaut32/tests/typelib.c, dlls/riched20/caret.c,
	  dlls/riched20/editor.c, dlls/riched20/para.c,
	  dlls/secur32/negotiate.c, dlls/secur32/secur32.c,
	  dlls/secur32/secur32_priv.h, dlls/urlmon/umon.c,
	  dlls/user/tests/edit.c, dlls/winmm/mci.c,
	  programs/explorer/explorer.c, tools/wmc/mcl.c, tools/wrc/wrc.c:
	Make more arrays const.

2006-01-24  Alexandre Julliard <julliard@winehq.org>

	* tools/wineprefixcreate.in:
	wineprefixcreate: Only create links for files that don't exist.
	Make a copy instead of a link if the original file is writable.

	* server/serial.c:
	server: Use the new set_fd_user function in create_serial().

2006-01-24  Mike McCormack <mike@codeweavers.com>

	* server/fd.c, server/file.c, server/file.h:
	server: Modify open_fd to create an fd without a user.
	Create a set_fd_user function.
	Update create_file() to use the above functions.

2006-01-24  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/import.c:
	winebuild: Get rid of the default ignored symbols list.

	* dlls/msvcrt/msvcrt.spec, dlls/ntdll/ntdll.spec, dlls/ntdll/string.c:
	ntdll: memcpy should behave like memmove in ntdll too.

	* dlls/ntdll/ntdll.spec:
	ntdll: Mark all libc-style functions as private to make sure we link
	to the real libc functions instead.

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/msvcrt.h, dlls/user/combo.c,
	  dlls/winedos/int21.c, include/winternl.h, programs/winedbg/winedbg.c:
	Avoid importing _strlwr/_strupr from ntdll.

	* dlls/msvcrt/console.c, dlls/msvcrt/file.c, dlls/msvcrt/msvcrt.h,
	  dlls/msvcrt/wcs.c:
	msvcrt: Use the msvcrt version of printf everywhere.

2006-01-24  Juan Lang <juan_lang@yahoo.com>

	* dlls/iphlpapi/ifenum.c, dlls/iphlpapi/ifenum.h,
	  dlls/iphlpapi/iphlpapi_main.c, dlls/iphlpapi/ipstats.c,
	  dlls/iphlpapi/ipstats.h:
	iphlpapi: Clean up memory allocation.
	- pass heap to allocate from directly to helper functions, instead of
	unnecessarily copying returned data
	- use public types rather than internal ones
	- make sure GetBestRoute doesn't return bogus matches

2006-01-24  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Generate type format strings for conformant varying arrays.

	* tools/widl/parser.y:
	widl: Fix detection of varying arrays.
	Correctly identify structures containing varying arrays as conformant
	varying structures.

	* tools/widl/parser.y:
	widl: Fix detection of conformant varying structs.
	Rename has_conformant_array to has_conformance, add a new variable
	has_variance and map has_conformant_string to has_conformance and
	has_variance.
	A conformant varying struct should be returned if just variance is
	present and even if no pointers are present.

	* tools/widl/typegen.c:
	widl: Support generation of conformant structure type strings.

	* tools/widl/typegen.c:
	widl: Conformant arrays have a size of 0.
	Conformant arrays should cause a size of 0 to be returned from
	type_memsize.

	* tools/widl/typegen.c:
	widl: Support correlation descriptors in structures.

	* tools/widl/parser.y:
	widl: Error if an array is in the middle of a structure.
	Fix detection of conformant arrays and output an error if the array
	isn't at the end of the structure.

	* tools/widl/header.h, tools/widl/parser.y, tools/widl/typegen.c:
	widl: Fix the detection of conformant and pointer structs.

	* tools/widl/typegen.c:
	widl: Simple structs and complex pointers.
	Write out type format string for simple structs and for pointers to
	non-simple types.

	* tools/widl/typegen.c:
	widl: Add framework for generating struct and union type format strings.

	* tools/widl/typegen.c:
	widl: Support different types of simple pointers.
	Support pointer types in unmarshall_arguments.

	* tools/widl/typegen.c:
	widl: Generate NdrNonConformatString* calls for non-conformant string types.

	* tools/widl/typegen.c:
	widl: Add functions for detecting array and string types.
	Add functions for detecting array and string types and use these in
	both writing type format strings and when marshalling and
	unmarshalling parameters.

	* tools/widl/typegen.c:
	widl: Support some more complicated conformance / variance expressions.

	* include/wine/rpcfc.h:
	widl: Added some more constants for conformance descriptors.

	* tools/widl/typegen.c:
	widl: Start implementing writing of conformance/variance descriptors.

	* include/wine/rpcfc.h, tools/widl/typegen.c:
	widl: Strings.
	Write out type format strings for string types.

	* tools/widl/typegen.c:
	widl: Arrays.
	Write out type format strings for arrays, except for the missing
	generic functionality of conformance and variance descriptors.

	* tools/widl/typegen.c:
	widl: Simplify write_typeformatstring_type.
	Simplify handling of types in write_typeformatstring_type by only
	writing non-pointer types out when ptr_level is 0. Add stubs for
	functions that will write out the type format string for strings and
	arrays.

	* tools/widl/typegen.c:
	widl: Don't use recursion for write_typeformatstring_type.
	Since a var_t can now be passed in, rename to
	write_typeformatstring_var. Simplifies the code.

	* tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Don't use recursion to implement write_procformatstring_type.
	Renamed to write_procformatstring_var now since we can pass a var_t in
	again. This results in simpler code.

2006-01-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c:
	kernel: Fail more gracefully when loading a builtin exe didn't work.

2006-01-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/listview.c:
	comctl32: Make listview use standard wine_dbg_sprintf and wine_dbgstr_xxx.

2006-01-24  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi: Fixes to preempt freetype 2.2.0.

2006-01-24  Jacek Caban <jacek@codeweavers.com>

	* include/Makefile.in, include/mshtmcid.h, include/mshtml.idl:
	Added mshtmcid.h.

2006-01-24  Huw Davies <huw@codeweavers.com>

	* configure, configure.ac, dlls/gdi/freetype.c, include/config.h.in:
	gdi: Use correct include file for FT_Get_Module.

2006-01-23  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/user/user32.spec, dlls/user/win.c:
	user32: Added stub for UpdateLayeredWindow.

2006-01-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/errno.c, dlls/msvcrt/main.c, dlls/msvcrt/msvcrt.h:
	msvcrt: Properly implemented strerror and perror (based on a patch by
	Uwe Bonnes).

	* dlls/msvcrt/data.c, dlls/msvcrt/errno.c:
	msvcrt: Added _sys_errlist (based on a patch by Uwe Bonnes).

	* dlls/msvcrt/msvcrt.h, dlls/msvcrt/tests/headers.c,
	  include/msvcrt/errno.h:
	msvcrt: Added EILSEQ definition.

2006-01-23  Hans Leidekker <hans@it.vu.nl>

	* dlls/msvcrt/msvcrt.spec, dlls/msvcrt/time.c:
	msvcrt: Stub implementation for wcsftime.

2006-01-23  Alexandre Julliard <julliard@winehq.org>

	* BUGS:
	Remove useless BUGS file.

2006-01-23  Robert Shearman <rob@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/helpers.c, dlls/msi/package.c:
	msi: Move the firing of control events to MSI_ProcessMessage.
	Move the firing of control events from internal helper functions to
	MSI_ProcessMessage so that custom actions can all cause control events
	to be fired.
	Added the firing of progress events.

	* dlls/msi/action.c, dlls/msi/files.c:
	msi: Call ui_actiondata for more actions.

2006-01-23  Detlef Riekenberg <wine.dev@web.de>

	* dlls/advpack/tests/Makefile.in, dlls/advpack/tests/advpack.c:
	advpack/tests: Fixed failure when "ProgramFilesDir" is != "C:\Program Files".

2006-01-23  Robert Reif <reif@earthlink.net>

	* dlls/winmm/winearts/Makefile.in, dlls/winmm/winearts/audio.c:
	winearts: Try to keep winecfg from crashing by recovering from an arts
	library crash.

2006-01-23  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/mmap.c, server/timer.c:
	Fixed a couple of warnings on MacOS.

	* dlls/dbghelp/stabs.c, programs/winedbg/be_alpha.c,
	  programs/winedbg/be_cpu.h, programs/winedbg/be_i386.c,
	  programs/winedbg/be_ppc.c, programs/winedbg/memory.c,
	  programs/winedbg/types.c:
	winedbg: Use Win32 types instead of long long.

	* server/trace.c, tools/make_requests:
	server: More generic mechanism for adding typecasts in server traces.
	Added casts for size_t values.

2006-01-23  Mike McCormack <mike@codeweavers.com>

	* dlls/ntdll/ntdll.spec:
	ntdll: Forward ZwNotifyChangeDirectoryFile to NtNotifyChangeDirectoryFile.

2006-01-23  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c,
	  dlls/dbghelp/symbol.c:
	dbghelp: Return better values in module information.
	- 32/64: number of symbols is now correct
	- 64: the 64 bit extra fields are now initialized with some non null
	yet sensible value

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/dbghelp_private.h,
	  dlls/dbghelp/module.c, dlls/dbghelp/path.c, dlls/dbghelp/pe_module.c,
	  dlls/dbghelp/source.c, dlls/dbghelp/symbol.c, dlls/dbghelp/type.c,
	  include/dbghelp.h:
	dbghelp: Brought dbghelp.h a bit closer to PSDK definitions.

	* dlls/dbghelp/dbghelp.c:
	dbghelp: SymSetContext should return FALSE when setting twice the same
	frame context.

	* dlls/dbghelp/dbghelp.c:
	dbghelp: Live targets.
	In SymInitialize, now trying to check if the hProcess is a real live
	target or not. If we think it is, try to grasp ELF information from
	it.

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/dbghelp_private.h,
	  dlls/dbghelp/module.c, include/dbghelp.h:
	dbghelp: Started implementation of the global callback mechanism.

	* dlls/dbghelp/symbol.c, include/dbghelp.h:
	dbghelp: Symbol info.
	- better coding for SYMBOL_INFO filling
	- some fixes on some fields (parameters)
	- now using the max size for symbol info

	* programs/winedbg/break.c, programs/winedbg/debugger.h,
	  programs/winedbg/expr.c, programs/winedbg/memory.c,
	  programs/winedbg/stack.c, programs/winedbg/types.c,
	  programs/winedbg/winedbg.c:
	winedbg: Added a more decent scheme for handling segmented addresses.

2006-01-23  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/ldt.c:
	libwine: Added LDT support for MacOS/x86.

2006-01-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/menu.c, dlls/user/tests/menu.c:
	user32: Make GetMenuItemInfo tests pass under Wine.
	- Change menu item search algorithm to recurse into a submenu first.
	- Fallback to a found submenu if nothing else was found.

2006-01-23  Robert Shearman <rob@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Support msidbControlAttributesSunken.

	* dlls/msi/dialog.c:
	msi: Only print fixme for progress attribute once.
	Since setting the Progress attribute is done quite frequently, don't
	flood the user with messages about it being unimplemented.

2006-01-23  Mike McCormack <mike@codeweavers.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/main.c:
	crypt32: Add stub implementations of some crypto functions used by IE6 install.

2006-01-23  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/import.c:
	winebuild: Always import atof, the MS version is different.

2006-01-23  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/device.c:
	d3d8: For render states D3DRS_POINTSPRITEENABLE and
	D3DRS_MULTISAMPLEANTIALIAS, use GL_SUPPORT correctly.

	* dlls/d3d8/d3dcore_gl.h:
	d3d8: Add GL_ARB_multisample definitions.

	* dlls/d3d8/d3dcore_gl.h, dlls/d3d8/directx.c:
	d3d8: Add detection for GL_ARB_point_sprite support.

2006-01-23  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/scroll.c:
	user: Add missing WIN_ReleasePtr.

2006-01-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/avifil32/avifile_private.h, dlls/msvideo/msvideo_main.c,
	  include/vfw.h:
	ICCompressorChoose should initialize fccType and fccHandler fields
	for the full frames case as well.

2006-01-23  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/tests/atom.c:
	kernel/tests: Integer atoms return different results on WinNT 3.51.

2006-01-23  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shell32.spec:
	shell32: Export DllGetClassObject by ordinal as grpconv.exe requires it.

2006-01-23  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Added DeleteSecurityContext.

2006-01-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/x11drv/keyboard.c:
	x11drv: Update Swiss German keyboard layout to better match the X11 one.

2006-01-23  James Hawkins <truiken@gmail.com>

	* dlls/shell32/shlfileop.c, dlls/shell32/tests/shlfileop.c:
	shell32: Reimplement a factored SHFileOperation.

2006-01-21  Marcus Meissner <meissner@suse.de>

	* tools/winebuild/build.h, tools/winebuild/relay.c,
	  tools/winebuild/spec16.c, tools/winebuild/spec32.c,
	  tools/winebuild/utils.c:
	winebuild: Output a .note.GNU-stack section to allow nonexecutable stack.

2006-01-21  Marcus Meissner <marcus@jet.franken.de>

	* dlls/gdi/metafile.c:
	gdi: Metafile records must be at least 3 words long.

2006-01-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/cppexcept.c:
	msvcrt: Preserve all registers in call_ebp_func.

2006-01-21  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsembed.c:
	mshtml: Return FALSE if Mozilla ActiveX Control could not be found.

2006-01-21  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec, include/advpub.h:
	advpack: Add a stub for RebootCheckOnInstall.

	* dlls/advpack/files.c:
	advpack: Fix the documentation for AddDelBackupEntry.

	* dlls/advpack/advpack.c:
	advpack: Complete the documentation for CloseINFEngine.

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec, include/advpub.h:
	advpack: Add a stub for SetPerUserSecValues.

	* dlls/advpack/files.c:
	advpack: Fix the documentation for FileSaveMarkNotExist.

	* dlls/advpack/files.c:
	advpack: Forward FileSaveMarkNotExist to AddDelBackupEntry.

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec, include/advpub.h:
	advpack: Add stubs for the user stub wrapper functions.

	* dlls/advpack/files.c:
	advpack: Implement DelNodeRunDLL32.

	* dlls/advpack/Makefile.in, dlls/advpack/advpack.c:
	advpack: Implement IsNTAdmin.

2006-01-20  Huw Davies <huw@codeweavers.com>

	* dlls/shell32/brsfolder.c, dlls/shell32/pidl.c, dlls/shell32/shlfolder.c:
	shell: Fix incorrect usage of the return value of StrRetToStrNW.

2006-01-20  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/Makefile.in, dlls/wininet/internet.c,
	  dlls/wininet/internet.h, dlls/wininet/netconnection.c:
	wininet: INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT work.
	Beginning of framework to implement handling of InternetQueryOption
	for INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT.

2006-01-20  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Remove the -mpreferred-stack-boundary option, this breaks MacOS.

	* tools/winebuild/build.h, tools/winebuild/relay.c:
	winebuild: Moved offset definitions to relay.c since they are only
	needed there.
	Hardcoded a couple of TEB offsets to support cross-compilation.

2006-01-20  Huw Davies <huw@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/tests/compobj.c:
	ole: ProgIDFromCLSID sets progid to NULL on failure.

2006-01-20  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/x11drv/clipboard.c:
	x11drv: Prevent NULL dereference in SelectionRequest handling.

2006-01-20  H. Verbeet <hverbeet@gmail.com>

	* dlls/ntdll/nt.c, dlls/ntdll/ntdll.spec:
	ntdll: Add a stubbed NtSetSystemInformation.

2006-01-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/signal_i386.c, include/thread.h,
	  tools/winebuild/relay.c:
	ntdll: Move the %gs register to the ntdll_thread_regs structure.

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/signal_i386.c, dlls/ntdll/thread.c:
	ntdll: Move the TEB register to the ntdll_thread_regs structure.

2006-01-20  Juan Lang <juan_lang@yahoo.com>

	* dlls/iphlpapi/ifenum.c, dlls/iphlpapi/ifenum.h,
	  dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Remove redundant comments and fix typos.

2006-01-20  Detlef Riekenberg <wine.dev@web.de>

	* dlls/user/tests/resource.c:
	user/tests: Added \n to a few ok() calls.

2006-01-20  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/rpc.c, dlls/ole32/tests/marshal.c:
	ole: Verify that the proxy is being used in the correct thread.

	* dlls/rpcrt4/cproxy.c, dlls/rpcrt4/cpsf.c, dlls/rpcrt4/cpsf.h:
	rpc: Replace the hack that detected stubless proxies with the correct check.
	Pass in the ProxyInfo and Index to StdProxy_Construct instead of just
	the three members of the structure that were previously needed.
	Fix the detection of stubless proxies.

	* dlls/rpcrt4/ndr_marshall.c:
	rpc: Skip over the right number of bytes in new correlation descriptors.
	Skip over 6 bytes of the format descriptor if new correlation
	descriptors are being used, instead of 4.

	* dlls/ole32/tests/marshal.c:
	ole: Add a test for WM_QUIT behaviour during COM calls.

	* dlls/ole32/compobj.c:
	ole: Fix WM_QUIT Handling in CoWaitForMultipleHandles.
	When a WM_QUIT message in encountered in CoWaitForMultipleHandles then
	it should repost the WM_QUIT message and then switch to waiting
	without checking messages.

2006-01-20  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/pixelshader.c:
	wined3d: Fix a few TRACEs in pixelshader.c.

	* dlls/wined3d/device.c:
	wined3d: Return the correct pixelshader in
	IWineD3DDeviceImpl_GetPixelShader.

	* dlls/wined3d/drawprim.c:
	wined3d: A shader isn't guaranteed to have a vertex declaration, so
	add a NULL check for that.

2006-01-20  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c:
	shdocvw: Added GetWindow implementation.

2006-01-19  Alexandre Julliard <julliard@winehq.org>

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

----------------------------------------------------------------
2006-01-19  Saulius Krasuckas <saulius.krasuckas@gmail.com>

	* dlls/mscms/tests/Makefile.in, dlls/mscms/tests/profile.c:
	mscms: Check an appropriate registry key.

2006-01-19  Ken Thomases <ken@codeweavers.com>

	* dlls/user/win.c, dlls/user/winproc.c:
	user: Fixed the lifetime of MDICREATESTRUCT variables.

2006-01-19  Aric Stewart <aric@codeweavers.com>

	* dlls/shell32/shellpath.c:
	shell32: Update shellpaths My Pictures, My Video, My Music to be under
	$HOME, with a number of fallbacks.

2006-01-19  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/d3dcore_gl.h:
	d3d8: Added GL_ARB_point_sprite definition.

	* dlls/wined3d/directx.c:
	wined3d: Better version string parsing for VENDOR_NVIDIA in
	IWineD3DImpl_FillGLCaps.

2006-01-19  Mike McCormack <mike@codeweavers.com>

	* programs/winemine/dialog.c, programs/winemine/main.c:
	winmine: Use WIN32_LEAN_AND_MEAN.

2006-01-19  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/Makefile.in, dlls/msxml3/msxml_private.h,
	  dlls/msxml3/node.c, dlls/msxml3/text.c:
	msxml: Text node implementation.

2006-01-19  Jason Edmeades <us@edmeades.me.uk>

	* dlls/user/tests/menu.c:
	user: Tests for when the menu is incorrect because of duplication of a
	menu id and an hMenu.

2006-01-19  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/x11drv/keyboard.c:
	x11drv: Add support for another Canadian French keyboard flavour.

2006-01-19  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: In IWineD3DImpl_FillGLCaps use glGetString instead of
	glXGetClientString to retrieve the OpenGL vendor.

2006-01-19  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/instr.c:
	kernel: Remove calls to Nt[Get|Set]ThreadContext.
	It's done in exception handler now.

2006-01-19  Mike McCormack <mike@codeweavers.com>

	* programs/winecfg/Makefile.in, programs/winecfg/audio.c,
	  programs/winecfg/driveui.c, programs/winecfg/main.c,
	  programs/winecfg/properties.c, programs/winecfg/properties.h,
	  programs/winecfg/theme.c, programs/winecfg/winecfg.c,
	  programs/winecfg/x11drvdlg.c:
	winecfg: Tidy up included headers.
	Get rid of the barely used properties.c.

2006-01-18  Hans Leidekker <hans@it.vu.nl>

	* tools/winedump/output.c:
	winedump: Fix compilation of generated source.
	Include config.h in the .c file, not in the .h file.

2006-01-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c:
	ntdll: Cleaned up the ioctl functions.
	Renamed function parameters to something usable.
	Fixed potential event leaks.

2006-01-18  Mike McCormack <mike@codeweavers.com>

	* programs/notepad/license.c, programs/regsvr32/regsvr32.c,
	  programs/winebrowser/main.c, programs/winhelp/callback.c,
	  programs/winhelp/macro.c:
	programs: Use WIN32_LEAN_AND_MEAN.

2006-01-18  Sasha Slijepcevic <sascha93101@yahoo.com>

	* dlls/msvcrt/file.c:
	msvcrt: In _tempnam, if TMP is set, it has a precedence over the
	parameter dir.

2006-01-18  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/node.c:
	msxml: Implement get_nodeTypedValue.

2006-01-18  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/loader.c:
	ntdll: Loader optimization.
	Optimize for the case where a DLL with no path is requested and it is
	already loaded.

2006-01-18  Robert Reif <reif@earthlink.net>

	* dlls/winmm/winealsa/audio.c:
	winealsa: Add critical section names for debugging.

2006-01-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi/metafile.c:
	gdi: Ignore a few more metafile escapes.

2006-01-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/events.c,
	  dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Deactivate document in SetClientSite if ClientSite is NULL.
	Fix ref counting.

2006-01-18  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c, dlls/winspool/tests/info.c:
	winspool: Printing environment support for GetPrinterDriverDirectory.

2006-01-18  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/msacm/driver.c, dlls/msacm/internal.c, dlls/msacm/wineacm.h:
	msacm: acmDriverAdd() support for ACM_DRIVERADDF_FUNCTION, implemented
	local drivers.

	* dlls/msacm/driver.c, dlls/msacm/stream.c:
	msacm: reroute all SendDriverMessage() calls to MSACM_Message.

	* dlls/msacm/driver.c:
	msacm: acmDriverMessage() with proper support for DRV_CONFIGURE.
	Allocate and supply a DRVCONFIGINFO structure for DRV_CONFIGURE when
	application does not supply one.

	* dlls/msacm/driver.c, dlls/msacm/internal.c, dlls/msacm/wineacm.h:
	msacm: acmDriverAdd[AW] support for ACM_DRIVERADDF_NOTIFYHWND.
	Broadcast notifications are fleshed out and are now fully functional.

	* dlls/msacm/driver.c, dlls/msacm/internal.c, dlls/msacm/wineacm.h:
	MSACM: acmDriverAddW skeleton, implementation of ACM_DRIVERADDF_NAME.
	- Rework acmDriverAddA to call acmDriverAddW.
	- Implement stub for acmDriverAddW with switch for the 3 known cases
	of driver add.
	- Implementation for case ACM_DRIVERADDF_NAME, which loads driver name
	& alias from registry (similar to msacm32 load).

	* dlls/msacm/driver.c, dlls/msacm/internal.c, dlls/msacm/wineacm.h:
	msacm: Implement acmDriverPriority with driver priority/enabled saving.
	Foundation for notification broadcasts with support for deferred
	notification.

	* dlls/msacm/internal.c:
	msacm: Implement honouring of driver priority and enabled status at
	load time.

2006-01-18  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/oleaut32/tests/vartest.c:
	oleaut: Add missing SysFreeString to the Var{Mul,Add,Cmp} tests.

	* dlls/oleaut32/tests/vartest.c, dlls/oleaut32/tests/vartype.c:
	oleaut: Merge the VarCmp tests from vartype.c into vartest.c.

2006-01-18  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Clear the newly allocated memory used for complex arrays and structs.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Fix the sending of >5800 byte messages by only adding offset
	to the buffer after the first batch of data has been written to the
	pipe.

	* dlls/ole32/compobj.c:
	ole: Update the COM todo list.

	* dlls/ole32/ole2.c:
	ole: Re-post the quit message outside of the DoDragDrop message loop.

	* dlls/oleaut32/tmarshal.c:
	oleaut: Reduce an ERR down to a WARN since a NULL interface pointer
	doesn't signify an error; it is just unusual.

	* programs/notepad/Zh.rc:
	notepad: Add a Font menu item for the Chinese locale.

2006-01-18  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/Makefile.in, dlls/msxml3/attribute.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/node.c:
	msxml: Add attribute node implementation.

2006-01-17  Marcus Meissner <meissner@suse.de>

	* dlls/msvcrt/dir.c:
	msvcrt:	_makepath(): operate on target buffer directly.

2006-01-17  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c:
	dsound: Primary buffer size change tests.
	It looks like Windows doesn't change the primary buffer length when
	changing formats so make the tests fail now.
	This means the current ALSA implementation is broken when hardware
	acceleration is set to full and the primary buffer format is changed.

	* dlls/dsound/tests/.gitignore, dlls/dsound/tests/Makefile.in,
	  dlls/dsound/tests/duplex.c:
	dsound: Add full duplex tests.

	* dlls/dsound/dsound_private.h, dlls/dsound/duplex.c:
	dsound: Add full duplex support.

	* dlls/dsound/dsound.c, dlls/dsound/dsound_private.h:
	dsound: Convert IDirectSoundImpl from a COM class to a regular class
	and move most of the COM functions to the DirectSoundDevice class.

2006-01-17  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/static.c:
	static control: Immediately repaint the control.

	* dlls/user/static.c:
	static control: Separate WM_NCCREATE and WM_SETTEXT.
	- Separate WM_NCCREATE and WM_SETTEXT.
	- WM_SETTEXT and WM_SETFONT are ignored for static controls that don't
	display text.
	- WM_SETTEXT must not be used to change the icon/bitmap/metafile.
	- Immediately repaint the control on all occasions.

	* dlls/user/static.c:
	static control: Don't load OEM bitmaps.

	* dlls/user/static.c:
	static control: STN_ENABLE and STN_DISABLE notifications.

	* dlls/user/static.c:
	static control: Better STM_GETIMAGE.
	STM_GETIMAGE returns NULL if the given image type doesn't match the
	control's style.

	* dlls/user/static.c:
	static control: Support SS_REALSIZEIMAGE.
	- Support SS_REALSIZEIMAGE (this flag means "it's not necessary to
	load icons in the default icon size").
	- SS_ICON: Ability to display cursors.

	* dlls/user/static.c:
	static control: Support SS_REALSIZECONTROL.
	- Support SS_REALSIZECONTROL (this flag means "don't resize the
	control to the size of the bitmap/icon").
	- Always call GlobalUnlock16 after GlobalLock16.

	* dlls/user/static.c:
	static control: Background of enhanced metafiles.
	- Always paint the background of static controls displaying enhanced
	metafiles.
	- Also paint the background if there's no metafile to display.

	* dlls/user/static.c:
	static control: Support text style flags.
	- Support DT_END_ELLIPSIS, DT_PATH_ELLIPSIS and DT_WORD_ELLIPSIS.
	- Paint simple text without prefixes (SS_SIMPLE | SS_NOPREFIX) with
	the ExtTextOut function like the native control does.
	- Gray text color: Only for non-simple static controls.

2006-01-17  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/msacm/tests/msacm.c:
	msacm: Add parameter tests for ACM_METRIC_DRIVER_PRIORITY and
	ACM_METRIC_DRIVER_SUPPORT.
	Fix copy&paste mislabeling on acmDriverID test failure.

	* dlls/msacm/msacm32_main.c:
	msacm: Fix acmMetrics(ACM_METRIC_DRIVER_PRIORITY) return on error.

	* dlls/msacm/msacm32_main.c:
	msacm: Add support for ACM_METRIC_DRIVER_SUPPORT.

2006-01-17  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shell32_main.h, dlls/shell32/shfldr_unixfs.c:
	shell32: Support for CLSID_ShellFSFolder in unixfs.

2006-01-17  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/d3d8/device.c:
	d3d8: Render state additions.
	Implemented D3DRS_EDGEANTIALIAS.
	Implemented D3DRS_POINTSPRITEENABLE.
	Implemented D3DRS_MULTISAMPLEANTIALIAS.

2006-01-17  H. Verbeet <hverbeet@gmail.com>

	* include/wine/wined3d_interface.h:
	wined3d: Create a common WineD3D base class, IWineD3DBase.

2006-01-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/shlwapi/reg.c:
	shlwapi: Fixed use of wrong buffer in SHCopyKeyW.

2006-01-17  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Report a few more errors.
	Use Heap[Alloc|Free] instead of malloc|free.

2006-01-17  Robert Shearman <rob@codeweavers.com>

	* dlls/user/message.c, dlls/user/tests/msg.c,
	  include/wine/server_protocol.h, server/protocol.def, server/queue.c,
	  server/request.h, server/trace.c:
	user: Fix WM_QUIT message ordering from PostQuitMessage.
	Added a new server call as PostQuitMessage should set a flag in the
	message queue to return the WM_QUIT message when there are no other
	pending messages, rather than posting a message to the thread queue as
	it does at the moment.

2006-01-17  Mike McCormack <mike@codeweavers.com>

	* dlls/ntdll/tests/.gitignore, dlls/ntdll/tests/Makefile.in,
	  dlls/ntdll/tests/change.c:
	ntdll: Add a test for NtNotifyChangeDirectoryFile.

	* server/fd.c:
	server: Make sure to release the fd we grabbed in all cases.

	* dlls/kernel/kernel32.spec, dlls/kernel/sync.c, include/winbase.h:
	kernel32: Create a stub implementation for PostQueuedCompletionStatus.

	* dlls/ntdll/reg.c:
	ntdll: Use FILE_OPEN instead of OPEN_EXISTING when calling NtCreateFile.

2006-01-16  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Tests for the VarCmp reimplementation.

	* dlls/oleaut32/variant.c:
	oleaut32: Reimplement VarCmp().
	- Supports now all WinXP allowed combinations of input variants.
	- VT_RESERVED on input variants is handled now.
	- Removed complicated VT_DATE comparision; that's not how Windows does it.
	- Improved documentation.

	* dlls/oleaut32/varformat.c, dlls/oleaut32/variant.c,
	  dlls/oleaut32/variant.h:
	oleaut32: Define missing but useful VTBIT_* macros.

2006-01-16  Robert Shearman <rob@codeweavers.com>

	* dlls/shell32/shfldr_fs.c:
	shell: GetDetailsOf fix.
	Initialise hr and psd->str.uType before the call to
	IShellFolder_GetDisplayNameOf so that whatever it returns is
	preserved.

	* dlls/shell32/shfldr.h, dlls/shell32/shfldr_desktop.c,
	  dlls/shell32/shfldr_fs.c:
	shell: Convert the filesystem shell folder to Unicode.

	* dlls/shell32/cpanelfolder.c, dlls/shell32/shfldr.h,
	  dlls/shell32/shfldr_desktop.c, dlls/shell32/shfldr_fs.c,
	  dlls/shell32/shfldr_mycomp.c, dlls/shell32/shlfolder.c:
	shell: Convert SHELL32_GetDisplayNameOfChild to unicode.

2006-01-16  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/msacm/driver.c:
	msacm: Fix incorrect linked list traversing leading to memory/driver
	instance leak.

2006-01-16  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* programs/regsvr32/regsvr32.c:
	regsvr32 understands '-' and '/' for arguments.

2006-01-16  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/change.c, dlls/kernel/file16.c:
	kernel32: Move FileCDR16 in with the other 16bit file functions.

	* include/winbase.h:
	kernel32: Declare BindIoCompletionCallback().

2006-01-16  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut: Handle a non-byref variant being passed for a byref param in
	ITypeInfo::Invoke.

	* dlls/oleaut32/typelib.c:
	oleaut: Only allocate memory once for each array needed for the
	arguments in ITypeInfo::Invoke.

	* dlls/oleaut32/typelib.c:
	oleaut: Simplify missing argument handling in ITypeInfo::Invoke.
	Simplify missing argument handling by pre-allocating an array of the
	maximum number of missing arguments there could be.

2006-01-16  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml: Fix for get_nodeValue on attributes.

	* dlls/msxml3/element.c, dlls/msxml3/tests/domdoc.c:
	msxml: Implement setAttribute.

2006-01-16  Saulius Krasuckas <saulius.krasuckas@gmail.com>

	* dlls/mscms/tests/profile.c:
	mscms: Collect some data during profile enumeration.

2006-01-16  Hans Leidekker <hans@it.vu.nl>

	* dlls/kernel/virtual.c:
	kernel: Documentation cleanups.

2006-01-16  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/sysparams.c:
	user: Avoid buffer overflow in sysparams.c.
	Increase buffer size to 12 for getting and setting integer parameters
	from/to the registry.

2006-01-16  Mike McCormack <mike@codeweavers.com>

	* programs/control/control.c, programs/eject/eject.c,
	  programs/expand/expand.c, programs/hh/main.c,
	  programs/msiexec/msiexec.c, programs/progman/dialog.c,
	  programs/progman/group.c, programs/progman/grpfile.c,
	  programs/progman/program.c, programs/progman/string.c,
	  programs/wcmd/builtins.c, programs/wcmd/directory.c,
	  programs/winecfg/appdefaults.c, programs/winecfg/libraries.c,
	  programs/winecfg/properties.c, programs/winepath/winepath.c:
	programs: Use WIN32_LEAN_AND_MEAN in some more places.

	* programs/wineboot/wineboot.c:
	wineboot: Use WIN32_LEAN_AND_MEAN.
	Use HeapAlloc/HeapFree instead of malloc/free.

	* include/winbase.h:
	kernel32: Define SCS_64BIT_BINARY.

	* dlls/ntdll/exception.c:
	ntdll: Use the NTAPI definition of EXCEPTION_ACCESS_VIOLATION.

	* dlls/ntdll/directory.c, dlls/ntdll/ntdll.spec:
	ntdll: Add a stub implementation of NtNotifyChangeDirectoryFile.

2006-01-16  Robert Reif <reif@earthlink.net>

	* dlls/dsound/dsound.c, dlls/dsound/dsound_private.h:
	dsound: Make dumpCooperativeLevel global.
	Remove extern from some function prototypes.

	* dlls/dsound/capture.c, dlls/dsound/dsound_private.h:
	dsound: Make some capture functions global.

2006-01-16  Mike McCormack <mike@codeweavers.com>

	* tools/make_ctests.c:
	make_ctests: Declare WIN32_LEAN_AND_MEAN when compiling testlist.c.

	* include/winnt.h:
	kernel32: Add FILE_NOTIFY_INFORMATION.

	* dlls/msi/action.c:
	msi: Eliminate a fixed length buffer.

2006-01-16  Hans Leidekker <hans@it.vu.nl>

	* dlls/gdi/font.c:
	gdi: better implementation for GetCharABCWidthsFloat{A,W}.

2006-01-16  Lionel Ulmer <lionel.ulmer@free.fr>

	* dlls/ddraw/ddraw_main.c, dlls/ddraw/ddraw_private.h:
	ddraw: Better simulate what 'GetVerticalBlankStatus' does on real hardware.

2006-01-16  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c, dlls/shell32/tests/shlfolder.c:
	unixfs: Fix SetNameOf.
	Ensure that pidls passed to SHNotify are absolute SetNameOf should
	fail on absolute path names.
	Some tests to show this.

2006-01-14  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut: Add const attribute to iterators in get functions.

	* dlls/oleaut32/typelib.c:
	oleaut: Initialise more fields in CreateDispTypeInfo.
	Don't leave some of the fields of the TLBFuncDesc structure
	uninitialised in CreateDispTypeInfo.

	* dlls/oleaut32/tmarshal.c:
	oleaut: Support VT_CY in the typelib marshaller.

	* dlls/ole32/rpc.c:
	ole: Optimisation for COM Calls.
	Add an optimisation to yield and try to allow the RPC to run before
	waiting for messages and RPCs to arrive.

2006-01-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/msvcrt.spec:
	msvcrt: Forward functions to ntdll instead of libc where possible.

	* dlls/msvcrt/math.c, dlls/msvcrt/mbcs.c, dlls/msvcrt/msvcrt.spec,
	  dlls/msvcrt/string.c:
	msvcrt: Added wrappers for a few functions instead of linking them
	directly to libc.

	* dlls/msvcrt/math.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Set errno in the standard math functions too, not only in the
	_CI* variants.

	* dlls/msvcrt/msvcrt.spec, dlls/msvcrt/tests/printf.c, dlls/msvcrt/wcs.c:
	msvcrt: Make snprintf and snwprintf use the msvcrt version of printf.
	Remove todos from tests that succeed now.

	* dlls/msvcrt/misc.c, dlls/msvcrt/msvcrt.h, dlls/msvcrt/msvcrt.spec,
	  dlls/msvcrt/tests/headers.c, dlls/msvcrt/thread.c:
	msvcrt: Reimplement rand() and srand() to use per-thread data for the
	random seed.

	* dlls/msvcrt/msvcrt.h, dlls/msvcrt/msvcrt.spec, dlls/msvcrt/string.c,
	  dlls/msvcrt/wcs.c:
	msvcrt: Make strtok and wcstok thread-safe by using the per-thread data.

	* configure, configure.ac, dlls/msvcrt/main.c, dlls/msvcrt/msvcrt.h,
	  dlls/msvcrt/msvcrt.spec, dlls/msvcrt/time.c, include/config.h.in:
	msvcrt: Implemented asctime, ctime and strftime instead of using the libc ones.
	Make the code thread-safe by using asctime_r if available.

2006-01-14  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	unixfs: Fix ParseDisplayName.
	Build an absolute pidl to query attributes in
	UnixFolder::ParseDisplayName.

2006-01-14  James Hawkins <truiken@gmail.com>

	* dlls/advpack/files.c:
	advpack: Remove stub status from implemented functions.

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec, include/advpub.h:
	advpack: Add stubs for CloseINFEngine, OpenINFEngine, and
	TranslateInfStringEx.

	* dlls/advpack/advpack.spec, dlls/advpack/files.c, include/advpub.h:
	advpack: Add a stub for AddDelBackupEntry.

2006-01-14  Alexandre Julliard <julliard@winehq.org>

	* include/wine/port.h, loader/kthread.c:
	Get rid of the no longer needed DECL_GLOBAL_CONSTRUCTOR macro.

	* dlls/kernel/tests/file.c:
	kernel: Make sure the file contains data for the ReadFile test.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Fixed asm syntax for rep; movsl.

2006-01-14  Robert Reif <reif@earthlink.net>

	* dlls/dsound/buffer.c, dlls/dsound/dsound.c,
	  dlls/dsound/dsound_private.h:
	dsound: Rename some functions, make some functions global, and move
	some code around.

	* dlls/dsound/dsound_private.h, dlls/dsound/primary.c:
	dsound: Add DSOUND_PrimarySetFormat and use it to set primary format.

2006-01-14  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/shell32/shell32_main.c:
	shell32: Fix cut & paste error.

2006-01-14  Stefan Leichter <Stefan.Leichter@camLine.com>

	* programs/winetest/Makefile.in:
	winetest: Add cabinet tests.

2006-01-14  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/element.c, dlls/msxml3/tests/domdoc.c:
	msxml: Implement getAttribute.

2006-01-14  Aric Stewart <aric@codeweavers.com>

	* programs/explorer/explorer.c:
	explorer: Handle /select arguments correctly with the new winefile
	modifications.

2006-01-14  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/oleobj.c:
	mshtml: Better handling of IDocHostUIHandler in SetClientSite.

2006-01-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/kernel32.spec, dlls/kernel/krnl386.exe.spec,
	  dlls/kernel/ne_module.c:
	kernel: Reimplemented the MapHInst functions in assembly.

	* dlls/kernel/kernel32.spec, dlls/kernel/selector.c:
	kernel: Reimplemented the SMap/SUnmap functions in assembly.

2006-01-13  David Moore <davidm@sjsoft.com>

	* dlls/gdi/freetype.c:
	gdi: Fix display of fonts using Symbol codepages and assorted other
	codepages.

2006-01-13  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/files.c:
	advpack: Move file related functions to files.c.

	* dlls/advpack/Makefile.in, dlls/advpack/advpack.spec,
	  dlls/advpack/files.c, include/advpub.h:
	advpack: Add stubs for the file save/restore functions.

	* dlls/advpack/advpack.c:
	advpack: Only output a FIXME if flags are set.

2006-01-13  Saulius Krasuckas <saulius.krasuckas@gmail.com>

	* dlls/mscms/profile.c, dlls/mscms/tests/profile.c:
	mscms: Fix some wine_todo for GetStandardColorSpaceProfile().

	* dlls/mscms/tests/profile.c:
	mscms: Make two checks more strict in the case of success.

2006-01-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/signal_i386.c, dlls/ntdll/thread.c,
	  include/wine/server_protocol.h, include/winternl.h,
	  server/protocol.def, server/thread.c, server/trace.c:
	ntdll: Add debug registers to the context of all exceptions.
	Maintain a local cache of the debug registers to avoid server calls
	where possible.

2006-01-13  James Hawkins <truiken@gmail.com>

	* dlls/advpack/tests/files.c:
	advpack: Add initial tests for AdvInstallFile.

	* dlls/advpack/advpack.c:
	advpack: Implement AdvInstallFile.

2006-01-13  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h:
	riched20: Select word on double click.

	* dlls/riched20/editor.c:
	riched20: TODO list update.

	* dlls/riched20/caret.c, dlls/riched20/paint.c:
	riched20: Fixed some selection painting bugs.

2006-01-13  Jeremy White <jwhite@codeweavers.com>

	* dlls/msi/package.c:
	msi: gcc 2.95 compatibility fix.

	* dlls/crypt32/tests/encode.c:
	crypt32: Preserve gcc 2.95 compatibility.

2006-01-13  Alex Villacís Lasso <a_villacis@palosanto.com>

	* include/msacm.h:
	msacm: Add definition for ACM_DRIVERADDF_NAME.

2006-01-13  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Handle NULL lpBuffersIn in HttpSendRequestExW.

2006-01-13  Saulius Krasuckas <saulius.krasuckas@gmail.com>

	* dlls/mscms/tests/profile.c:
	mscms: Make enumerating more verbose.

2006-01-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c:
	ntdll: Round PE header size to a page boundary for size checks.

2006-01-12  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/comm.c, dlls/ntdll/Makefile.in, dlls/ntdll/file.c,
	  dlls/ntdll/ntdll_misc.h, dlls/ntdll/serial.c, include/Makefile.in,
	  include/ddk/ntddser.h:
	ntdll: Created infrastructure to support IOCTL for serial devices.
	- created infrastructure in ntdll to support IOCTL for serial devices
	- implemented IOCTLs in ntdll for serial break support
	- implemented the kernel32 equivalent on top of those IOCTLs

2006-01-12  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/nt.c, include/winternl.h:
	ntdll: NtQueryInformationToken change parameters according to PSDK.
	Check for NULL pointer.

2006-01-12  Ge van Geldorp <gvg@reactos.org>

	* dlls/shell32/shlexec.c:
	shell32: Fix directory execution.
	Only use the Folder class handler if we're actually executing a
	folder.

2006-01-12  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c:
	advpack: Add documentation for ExecuteCab.

	* dlls/advpack/advpack.spec, dlls/advpack/reg.c, include/advpub.h:
	advpack: Add stubs for the remaining registry functions.

	* dlls/cabinet/Makefile.in, dlls/cabinet/cabextract.c,
	  dlls/cabinet/cabinet.h, dlls/cabinet/fdi.c:
	cabinet: Move the remaining cabextract.c functions to fdi.c.

2006-01-12  Stefan Brüns <stefan.bruens@rwth-aachen.de>

	* dlls/commdlg/filedlg.c, dlls/commdlg/filedlgbrowser.c:
	commdlg: Makes return value of FILEDLG95_SendFileOK dependent of
	return value, not of DWL_MSGRESULT.

2006-01-12  Detlef Riekenberg <wine.dev@web.de>

	* dlls/ntdll/tests/exception.c:
	ntdll/tests: Skip tests if NtCurrentTeb doesn't exist.

2006-01-12  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/shell32/debughlp.c:
	shell32: MSVC compatibility fix in dump_pidl_hex().

2006-01-12  Robert Shearman <rob@codeweavers.com>

	* dlls/kernel/heap.c, dlls/kernel/tests/heap.c:
	kernel32: Fix GlobalReAlloc for size = 0.
	GlobalReAlloc should return NULL if the requested size is 0, the block
	is moveable and it is locked, but otherwise it should return the
	original memory block.

2006-01-12  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h,
	  dlls/riched20/editstr.h, dlls/riched20/string.c:
	riched20: Initial support for word break callback procedures.

	* dlls/riched20/paint.c:
	riched20: Removed a useless check in painting code.

2006-01-12  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/font.c:
	gdi: If the last param of GetKerningPairs is NULL then return the
	number of pairs.

2006-01-12  Robert Shearman <rob@codeweavers.com>

	* dlls/shell32/shlview.c:
	shell: Fix view window Z order.
	After creating the Shell View window we should call SetWindowPos to
	move the window on top of other child windows in the parent window.
	Also delay the showing of the window so that we can do more
	initialisation after window creation without it causing visual
	artifacts.

	* dlls/oleaut32/typelib.c:
	oleaut: Support conversion of VT_SAFEARRAY into VT_ARRAY|type.
	Typelib variant types that cannot be converted should return
	DISP_E_BADVARTYPE.
	Don't call DispCallFunc if conversion of one of the arguments failed.

	* dlls/ole32/rpc.c:
	ole: Fix crash in RpcChannelBuffer_SendReceive.
	Initialise apt to NULL since ipid_to_apt_stubbuffer no longer does
	this for us.

	* dlls/ole32/tests/marshal.c:
	ole: Use strict prototypes for some test functions.

2006-01-12  Saulius Krasuckas <saulius2@ar.fi.lt>

	* dlls/mscms/tests/profile.c:
	mscms: Null ID can make GetStandardColorSpaceProfile*() succeed.

2006-01-11  Jacek Caban <jacek@codeweavers.com>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: UrlCanonicalize: fix URL_DONT_SIMPLIFY.
	- URL_DONT_SIMPLIFY should change '/' <-> '\'
	- Better '/' / '\' handling

2006-01-11  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml: Implement createNode, appendChild and insertAfter.

2006-01-11  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winecfg/driveui.c:
	winecfg: Simplify code a bit.
	Enable apply button when needed and don't enable when nothing
	changed.

2006-01-11  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/.gitignore, dlls/msi/Makefile.in, dlls/msi/dialog.c,
	  dlls/msi/msi.rc:
	msi: Make the MSI SelectionTree control do something useful.

2006-01-11  Alexandre Julliard <julliard@winehq.org>

	* server/mapping.c:
	server: Don't round up the header size for image mappings.

	* dlls/ntdll/virtual.c:
	ntdll: Round up the mapping size in map_file_into_view when setting
	the protection bytes.

2006-01-11  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/main.c:
	crypt32: Fix a test that fails on Windows.

2006-01-11  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/internet.c, dlls/urlmon/urlmon_main.c:
	urlmon: Reimplement CoInternetCombineUrl to use pluggable protocol.

	* dlls/urlmon/umon.c:
	urlmon: Use CoInternetCombineUrl in URLMonikerImpl_Construct.

2006-01-11  Aric Stewart <aric@codeweavers.com>

	* dlls/msvcrt/tests/dir.c:
	msvcrt: Modify dir test to create its own directory to ensure the
	directory exists for the test. Using the temp dir as the root.

2006-01-11  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/list.c:
	riched20: Added \n to trace output.

2006-01-11  Marcus Meissner <marcus@jet.franken.de>

	* dlls/oleaut32/typelib.c:
	ole: ITypeInfo::Invoke stack overwrite fix.
	Have enough stack space up to even VT_VARIANTs, fixes a stack
	corruption.

2006-01-11  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/node.c:
	msxml: Fix for selectNodes when the node has no children.

2006-01-11  James Hawkins <truiken@gmail.com>

	* dlls/cabinet/cabextract.c:
	cabinet: Remove no longer used code from cabextract.c.

2006-01-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/signal_i386.c,
	  dlls/ntdll/signal_powerpc.c, dlls/ntdll/signal_sparc.c,
	  dlls/ntdll/signal_x86_64.c, dlls/ntdll/thread.c,
	  include/wine/server_protocol.h, server/context_i386.c,
	  server/protocol.def, server/thread.c, server/trace.c:
	ntdll: Handle NtSetContextThread on the client side (as far as
	possible) when setting the context of the current thread.

2006-01-11  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/shell32/classes.c, dlls/shell32/folders.c,
	  dlls/shell32/iconcache.c, dlls/shell32/shell32_main.c,
	  dlls/shell32/shell32_main.h:
	shell32: Fix folder icon index when read from registry.
	Change "DWORD dwNr" into "int icon_idx" at several places.

2006-01-11  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/winmm/winealsa/audio.c:
	winealsa: Ensure that copy_format() will not write past end of
	referenced WAVEFORMATPCMEX structure.

2006-01-11  Aric Stewart <aric@codeweavers.com>

	* programs/winefile/winefile.c:
	winefile: Highlight the file specified on the command line instead of
	filtering based on it. To be integrated with explorer to allow for
	that functionality.

2006-01-11  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/thread.c, dlls/ntdll/thread.c:
	ntdll: Implemented ntdll.NtSetInformationThread(ThreadAffinityMask).
	Reimplemented kernel32.SetThreadAffinityMask on top of it.

2006-01-11  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/tests/files.c:
	advpack: Implement ExtractFiles.

	* dlls/cabinet/fdi.c:
	cabinet: Add documentation for FDITruncateCabinet.

2006-01-11  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c:
	dsound: Add primary buffer change tests.
	Add tests to figure out whether Windows can change the primary buffer
	capabilities after setting the buffer format. Based on a patch by Alex
	Villacís Lasso.

2006-01-11  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Remove the font when setting a control's text.

2006-01-11  Rob Shearman <rob@codeweavers.com>

	* dlls/comctl32/tests/progress.c:
	comctl32: Test the painting behaviour of the progress bar control.
	Test the painting behaviour of the progress bar control when the
	PBM_SETPOS message is sent to it, with respect to whether the
	background is erased and what part of the control is redrawn.

2006-01-11  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/progress.c:
	comctl32: Invalidate the entire progress bar any time it changes.

2006-01-11  Saulius Krasuckas <saulius.krasuckas@gmail.com>

	* dlls/mscms/tests/profile.c:
	mscms: Set the last error code to an unusual value.

2006-01-11  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/commdlg/printdlg.c:
	commdlg: If provided use and update hDevMode in the PAGESETUPDLG struct.
	Update the dmDefaultSourcea return value inside hDevMode.

2006-01-11  Huw Davies <huw@codeweavers.com>

	* dlls/opengl32/wgl.c:
	opengl: Use indirect contexts if the surface is a pixmap.

2006-01-11  Francois Gouget <fgouget@codeweavers.com>

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Improve traces.
	Report the EnumResourceNamesW() and failure to find an icon
	separately so traces are less misleading.

2006-01-11  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/oleobj.c:
	ole: Implement IEnumSTATDATA for the Ole Advise Holder.
	Implement IEnumSTATDATA for the Ole Advise Holder and use it to
	implement the Send* functions.

	* dlls/ole32/marshal.c:
	ole: Initialise hrref so as not to display garbage in the trace.

	* dlls/ole32/defaulthandler.c:
	ole: Remove some duplicated code.

2006-01-10  Rein Klazes <wijn@wanadoo.nl>

	* dlls/hhctrl.ocx/hhctrl.c:
	hhctrl.ocx: Report commands in HtmlHelp that are not handled at all.

2006-01-10  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h,
	  dlls/riched20/editstr.h, dlls/riched20/paint.c, dlls/riched20/wrap.c:
	riched20: Reduced screen flicker by using proper update region invalidation.

2006-01-10  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/virtual.c:
	kernel: Remove no longer used debug channel.

2006-01-10  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h,
	  dlls/ole32/marshal.c:
	ole: Defer apartment window creation until the first object is marshalled.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/rpc.c:
	ole: Add an accessor function for an apartment's window.

	* dlls/ole32/rpc.c:
	ole: Report and clean up after PostMessage failures.

	* dlls/ole32/compobj_private.h, dlls/ole32/rpc.c,
	  dlls/ole32/stubmanager.c:
	ole: Pass a channel into IRpcStubBuffer::Invoke.
	Create a server channel and store this in the ifstub.
	Rename ipid_to_apt_and_stubbuffer to ipid_get_dispatch_params and make
	the function return an HRESULT.
	Return the channel for the ifstub in ipid_get_dispatch_params.

	* dlls/ole32/rpc.c:
	ole: Reduce the access rights required by start_local_service.

	* dlls/ole32/rpc.c:
	ole: Return the last error if we couldn't open the requested service.
	Fix the ok/failed message.

2006-01-10  James Hawkins <truiken@gmail.com>

	* dlls/advpack/tests/.gitignore, dlls/advpack/tests/Makefile.in,
	  dlls/advpack/tests/files.c:
	advpack: Add initial tests for ExtractFiles.
	- Use FCI to create a test cabinet file.
	- Add initial tests for ExtractFiles.

2006-01-10  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_misc.h, dlls/rpcrt4/ndr_ole.c:
	rpcrt4: Remove the unused RPCRT4_GetPSFactory function.

	* dlls/rpcrt4/ndr_ole.c:
	rpcrt4: Don't release the interface pointer on failure.
	Don't release the interface pointer on failure since we are not the
	ones that allocated it. It is the caller's responsability to call
	NdrInterfacePointerFree, where the freeing is supposed to happen.

	* dlls/kernel/heap.c:
	kernel32: Return an error when unlocking a global with a zero lock count.
	Rename GLOBAL_LOCK_MAX to the public GMEM_LOCKCOUNT.

2006-01-10  Saulius Krasuckas <saulius.krasuckas@gmail.com>

	* dlls/mscms/tests/profile.c:
	mscms: Enumerate registered standard colorspace profiles.

2006-01-10  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml: It's valid to release an empty document.

2006-01-10  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/comctl32/header.c:
	comctl32: Fix emitting of NM_CUSTOMDRAW header notifications.
	Emit NM_CUSTOMDRAW header notifications for all headers, not only
	ownerdrawn. Allow to change item text and background colors in an
	application's NM_CUSTOMDRAW handler.

	* dlls/riched20/string.c:
	riched20: Allow NUL characters.

2006-01-10  Robert Shearman <rob@codeweavers.com>

	* dlls/kernel/atom.c, dlls/kernel/atom16.c, dlls/kernel/environ.c,
	  dlls/kernel/file16.c, dlls/kernel/module.c, dlls/kernel/oldconfig.c,
	  dlls/kernel/profile.c, dlls/kernel/task.c, dlls/kernel/toolhelp16.c:
	kernel: Remove wine/server.h include from files where it is no longer needed.

2006-01-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/exception.c, dlls/ntdll/ntdll.spec, include/winternl.h:
	ntdll: NtRaiseException doesn't need to be a register function.
	Moved common code between NtRaiseException and RtlRaiseException to a
	separate raise_exception function.

	* dlls/kernel/except.c:
	kernel: Don't send a debugger event in UnhandledExceptionFilter,
	leave that to the standard ntdll exception handling.

	* dlls/kernel/kernel32.spec, dlls/kernel/thunk.c:
	kernel: Implement FT_Exit directly in assembly to avoid the overhead
	of register functions.

2006-01-10  James Hawkins <truiken@gmail.com>

	* configure, configure.ac, dlls/cabinet/Makefile.in,
	  dlls/cabinet/tests/.gitignore, dlls/cabinet/tests/Makefile.in,
	  dlls/cabinet/tests/extract.c:
	cabinet: Add initial tests for Extract.

	* dlls/cabinet/cabinet_main.c:
	cabinet: Implement Extract on top of FDI.

2006-01-10  Rein Klazes <wijn@wanadoo.nl>

	* dlls/winedos/int21.c:
	winedos: Open files with write access on read only media.
	If the CreateFile in INT21_CreateFile fails with ERROR_WRITE_PROTECT,
	retry without write access.

2006-01-10  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/caret.c, dlls/riched20/editor.h, dlls/riched20/para.c,
	  dlls/riched20/run.c:
	riched20: Speed up text insertion.
	Optimized reading large texts into RichEdit to be an O(n) order
	algorythm instead of O(n^2) by removing extraneous conversions of
	character offsets to run offsets.

2006-01-10  Mike McCormack <mike@codeweavers.com>

	* dlls/advapi32/service.c:
	advapi32: If we can't connect to a service's pipe, name the service in
	the error message.

	* dlls/msi/select.c:
	msi: Count the number of columns requested and allocate that many,
	as columns may be select more than once in from a table.

	* dlls/msi/action.c:
	msi: Don't crash if there's no script present when we try execute one.

	* dlls/msi/msiquery.c, include/msiquery.h:
	msi: Fixed the prototype of MsiDatabaseIsTablePersistent.
	Implemented MsiDatabaseIsTablePersistentA via the W function.

2006-01-10  Troy Rollo <wine@troy.rollo.name>

	* dlls/user/menu.c, dlls/user/user16.c, include/wine/winuser16.h,
	  include/winuser.h:
	user: Fix return type of EnableMenuItem.

	* dlls/shell32/shfldr_unixfs.c:
	shell32: Fix bug in renaming files in the file dialogs when UNIX paths
	are being used.

	* include/psapi.h:
	Fix GetModuleFileNameEx definition.

2006-01-10  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/static.c:
	user: Improve the ownerdraw support of the static control.

	* dlls/user/cursoricon.c, dlls/user/tests/resource.c:
	user: The LoadImage resource string may be a numeric string.

2006-01-10  Kaj Kaloinen <kkaloine@gmail.com>

	* dlls/shlwapi/shlwapi.rc, dlls/shlwapi/shlwapi_Fi.rc:
	shlwapi: Add Finnish translation.

2006-01-10  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/comctl32/status.c:
	comctl32: Call UpdateWindow() after changing statusbar text.

2006-01-09  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c:
	advpack: Add documentation for ExtractFiles.

	* dlls/cabinet/cabinet_main.c:
	cabinet: Clean up the documentation for Extract.

	* dlls/cabinet/cabinet.h:
	cabinet: Add the two flags used by Extract to cabinet.h.

	* dlls/cabinet/cabinet.h:
	cabinet: Define the flags member of the EXTRACTdest structure.

	* dlls/cabinet/cabinet_main.c:
	cabinet: Fix the second parameter name of Extract.

	* dlls/cabinet/fdi.c:
	cabinet: Store the cab file handle before extracting files so we can
	close the cab file even if no files are extracted.

2006-01-09  Saulius Krasuckas <saulius.krasuckas@gmail.org>

	* include/icm.h:
	include: Add missing color space constants.

2006-01-09  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/comctl32/rebar.c:
	comctl32: Fix rebar autosize behaviour.
	Allow autoresizing rebar by PostMessage(hwndRebar, WM_SIZE, 0, 0) like
	native does, taking as few rows as possible and using the parent
	window client area size for the other dimension (width for horizontal
	rebars or height for vertical ones).

	* dlls/user/combo.c:
	user: Fix dropdown combo creation when there is no space for an edit control.

2006-01-09  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/rpc.c:
	ole: Join the MTA if necessary when executing an RPC call.
	Join the MTA if necessary when executing an RPC call to ensure that it
	is executing with a valid apartment and won't fail for certain COM
	calls.

	* dlls/ole32/rpc.c:
	ole: Prefer services over servers.
	Attempt to start as a local service before attempting to start as a
	local server for the CLSCTX_LOCAL_SERVER case.

	* dlls/ole32/tests/compobj.c:
	ole: Add some tests for CLSIDFromString.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/ole16.c:
	ole: Remove __CLSIDFromStringA.
	Move the ANSI implementation of CLSIDFromString to ole16.c and change
	CLSIDFromString to only deal with Unicode strings.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Improve ReadVariance.
	Extend ReadVariance to read the offset as well as the actual count,
	since these always come in pairs.
	Handle the variance not being present in ReadVariance and always call
	it from the unmarshalling functions to simplify the code there and
	also to fix a bug where the format pointer wasn't advanced properly
	for complex arrays (introduced in the previous patch when implementing
	variance).

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Validate complex array format string.
	Verify that the format string being passed into the complex array
	functions is a complex array one.

2006-01-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Fix ref counting.

	* dlls/urlmon/binding.c:
	urlmon: Pass FORMATETC to OnDataAvailable.

	* dlls/urlmon/binding.c:
	urlmon: Added implementation of protocol stream.

2006-01-09  Robert Shearman <rob@codeweavers.com>

	* dlls/crypt32/main.c, dlls/rsaenh/rsaenh.c:
	Call DisableThreadLibraryCalls for DLLs that don't need thread
	creation/destruction notifications.

2006-01-09  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/shell32/shell32_Ko.rc:
	shell32: Update the Korean translation.

2006-01-09  Alexander N. Sørnes <alex@thehandofagony.com>

	* dlls/shell32/shell32_No.rc:
	shell32: Updated Norwegian Bokmål resources.

2006-01-09  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Improve stubs.
	Improve stubs for ScriptGetProperties and ScriptItemize.
	Add stub for ScriptFreeCache.

2006-01-09  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/heap.c, dlls/kernel/tests/heap.c:
	kernel: Trying to lock an empty global memory block gives an ERROR_DISCARDED.

	* dlls/user/combo.c:
	user32: Update the list of things to fix in the Combo control.

2006-01-09  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/menu.c, dlls/user/tests/menu.c:
	user32: Prevent a crash in GetMenuStringA caused by calling strlenW on
	a NULL pointer, with a test.

2006-01-09  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/editor.c:
	riched20: Fixed calculation of left indent and first indent paragraph
	properties.

	* dlls/riched20/string.c:
	riched20: Simplified logic in ME_StrRelPos().

2006-01-06  Aric Stewart <aric@codeweavers.com>

	* dlls/msvcrt/tests/.gitignore, dlls/msvcrt/tests/Makefile.in,
	  dlls/msvcrt/tests/dir.c:
	msvcrt: Add a regression test for _fullpath.

	* dlls/msvcrt/dir.c:
	msvcrt: Reworked _fullpath.
	Investigation with native msvcrt revealed that it is a wrapper for
	GetFullPathName and the current implementation was crashing with older
	mozilla installs if the path passed in was uninitialized.

2006-01-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/ole32/stg_bigblockfile.c:
	ole: Remove a no longer needed smbfs hack.

2006-01-06  Raimonds Praude <raimonds.praude@sets.lv>

	* dlls/user/combo.c:
	user32: Limit text in the edit field of a combo box.

2006-01-06  Marcus Meissner <marcus@jet.franken.de>

	* dlls/gdi/metafile.c:
	gdi: Filter GETSCALINGFACTOR and SETABORTDOC proc in metafile
	Escapes.

2006-01-06  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	ole: Remove the no longer used _copy_arg function.

	* dlls/oleaut32/typelib.c:
	ole: ITypeInfo::Invoke rewrite.
	Re-implement ITypeInfo::Invoke on top of DispCallFunc and
	VariantChangeType instead of _invoke and _copy_arg.

	* dlls/ole32/antimoniker.c, dlls/ole32/compositemoniker.c,
	  dlls/ole32/ole2.c, dlls/ole32/storage32.c:
	ole: Remove "stub" from TRACEs of functions that aren't stubs.

2006-01-06  Hans Leidekker <hans@it.vu.nl>

	* dlls/mscms/profile.c:
	mscms: Silence a potentially noisy fixme.

	* dlls/kernel/time.c:
	kernel: Documentation cleanups.

2006-01-06  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Compute variance for complex arrays

	* dlls/rpcrt4/cstub.c:
	rpcrt4: Call NdrStubCall2 when dealing with a pure interpreted stub
	that has no dispatch table.

2006-01-06  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/static.c:
	Static control: Support enhanced metafiles.

2006-01-06  Hans Leidekker <hans@it.vu.nl>

	* LICENSE, include/wine/wine_common_ver.rc:
	Update copyright info for the new year.

	* documentation/PACKAGING:
	documentation: Suggest installing OpenLDAP development libraries to packagers.

2006-01-06  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Generate static sizing information for fixed size structs.
	Don't generate FC_*_BASETYPE proc and type format strings for
	non-basetype fields/params.

2006-01-06  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/comctl32/syslink.c:
	comctl32: Reduce memory usage of the syslink control.

	* dlls/comctl32/syslink.c:
	comctl32: Some painting fixes for the syslink control.

2006-01-06  Rolf Kalbermatter <rolf.kalbermatter@citeng.com>

	* dlls/urlmon/umstream.c:
	urlmon: Fix a LARGE_INTEGER truncation.

2006-01-06  Robert Reif <reif@earthlink.net>

	* dlls/dsound/buffer.c, dlls/dsound/dsound.c,
	  dlls/dsound/dsound_private.h, dlls/dsound/mixer.c,
	  dlls/dsound/primary.c, dlls/dsound/propset.c, dlls/dsound/sound3d.c:
	dsound: Refactor playback.
	Replace references of IDirectSoundImpl with DirectSoundDevice to
	remove one level of indirection and remove the problem of a three
	object circular reference.

2006-01-06  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Unload riched20 after its window is destroyed.

	* dlls/msi/dialog.c:
	msi: Make radio buttons grey out correctly when disabled.

	* dlls/msi/helpers.c:
	msi: Clean trailing and leading spaces from path segments.

2006-01-06  Rolf Kalbermatter <rolf.kalbermatter@citeng.com>

	* tools/winapi/msvcmaker:
	winapi: msvcmaker adaption to new directory structure.
	Fix some issues with MSVC project file generation after recent
	directory restructuring.

	* tools/winapi/config.pm:
	winapi: Add the loader directory to the paths to exclude.
	There is nothing in there anymore that would need to be done for
	winapi tools.

	* tools/winapi/winapi_extract, tools/winapi/winapi_fixup:
	winapi: Cleanup some unused use clauses.

2006-01-06  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/commdlg/cdlg_Ko.rc:
	commdlg: Updated Korean translation.

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

2006-01-06  Mike McCormack <mike@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Output a FIXME message only once.

2006-01-06  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c,
	  dlls/dsound/tests/dsound.c, dlls/dsound/tests/dsound8.c,
	  dlls/dsound/tests/dsound_test.h:
	dsound: Fix double free bug in tests.
	Fix double free in tests.  Only happens in interactive mode when
	testing duplicated 3D buffers.

2006-01-06  Anssi Hannula <anssi.hannula@gmail.com>

	* dlls/shell32/shell32_Fi.rc:
	shell32: Spelling fixes for the Finnish resource.

2006-01-06  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/ole32/storage32.c:
	ole: Fix SmallBlocksToBigBlocks loop.
	Stop copying data when read returns 0 bytes

2006-01-05  Robert Shearman <rob@codeweavers.com>

	* configure, configure.ac, dlls/Makefile.in, dlls/security/.gitignore,
	  dlls/security/Makefile.in, dlls/security/security.spec:
	Added implementation of security.dll.

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

	* dlls/wininet/http.c, dlls/wininet/utility.c:
	wininet: lpvStatusInfo in INTERNET_STATUS_NAME_RESOLVED,
	INTERNET_STATUS_CONNECTING_TO_SERVER and
	INTERNET_STATUS_CONNECTED_TO_SERVER should be strings, not
	sockaddr_in.

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

	* dlls/msvcrt/except.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Added assembly routines to save/restore registers for setjmp/longjmp
	to avoid the overhead of a full-blown register function.
	Some tracing improvements.

	* dlls/msvcrt/cppexcept.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Added some assembly glue for the asm bits of __CxxFrameHandler
	to avoid having to save/restore the whole context on every call.

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

	* dlls/urlmon/binding.c:
	urlmon: Added implementation of QueryService and stub implementation
	of IHttpNegotiate2 interface.

	* dlls/urlmon/binding.c:
	urlmon: Query service provider for IInternetProtocol.

2006-01-05  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winspool/winspool.drv.spec:
	winspool: Added ordinal exported functions of winspool.drv.

2006-01-05  Dan Kegel <dank@kegel.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Allow _invoke to handle up to 23 parameters.

2006-01-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/module.c, dlls/dbghelp/stack.c,
	  dlls/dbghelp/symbol.c, include/dbghelp.h:
	dbghelp: StackWalk (32 and 64 bit version).
	- enhance implementation of StackWalk (32 and 64 bit version) by
	making use of module information and calling for FPO
	- FPO part is still non functional
	- implemented SymGetModuleBase64
	- stubbed SymFunctionTableAccess64

2006-01-05  Robert Reif <reif@earthlink.net>

	* dlls/dsound/capture.c, dlls/dsound/dsound_private.h:
	dsound: Capture refactoring.
	Move initialization code from DirectSoundCapture to
	DirectSoundCaptureDevice.
	Make DirectSoundCaptureBuffer directly reference
	DirectSoundCaptureDevice rather than DirectSoundCapture to eliminate
	one level of indirection.
	Rename DSOUND_CreateDirectSoundCaptureBuffer to
	IDirectSoundCaptureBufferImpl_Create to be consistent.

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

	* libs/wpp/ppl.l, programs/winedbg/debug.l, programs/winhelp/macro.lex.l,
	  tools/widl/parser.l, tools/wrc/parser.l:
	Remove YY_NO defines that cause warnings.

2006-01-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/symbol.c:
	dbghelp: Removed no longer needed 'stub' in TRACEs.

2006-01-05  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/cproxy.c, dlls/rpcrt4/ndr_misc.h,
	  dlls/rpcrt4/ndr_stubless.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Implement NdrClientCall2 and NdrServerCall2.

	* dlls/oleaut32/typelib.c:
	ole: Store the result from _invoke in a VARIANTARG structure.

	* programs/regedit/childwnd.c:
	regedit: Initialise nFocusPanel.

	* dlls/kernel/oldconfig.c:
	kernel32: Check for the correct error return value from open.

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

	* dlls/urlmon/tests/url.c:
	urlmon: Code clean up.

	* dlls/urlmon/binding.c:
	urlmon: Added GetBindInfoString implementation.

2006-01-04  Alexandre Julliard <julliard@winehq.org>

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

----------------------------------------------------------------
2006-01-04  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/msacm/stream.c:
	msacm: Initialize some ACMSTREAMHEADER fields for the sake of native codecs.
	Initialize cb[Src|Dst]LengthUsed to 0 before calling into codec,
	required by (some?) native codecs.

2006-01-04  Vitaliy Margolen <wine-patch@kievinfo.com>

	* tools/wine.inf:
	wine.inf: Add a few keys to HKLM\Hardware.

2006-01-04  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winsock/socket.c:
	winsock: Map wildcards for socket type and protocol in getaddrinfo().

2006-01-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	Set refcount to -1 on implicitly loaded dlls to avoid unloading them
	(suggested by Michael Ost).

2006-01-04  Marcus Meissner <marcus@jet.franken.de>

	* dlls/shlwapi/shlwapi.spec:
	shlwapi: Print PathCombine* strings arguments in relay debugging.

2006-01-04  Alexandre Julliard <julliard@winehq.org>

	* include/wine/pthread.h:
	Avoid DECLSPEC_NORETURN on function pointers for MSVC compatibility.

2006-01-04  Mike McCormack <mike@codeweavers.com>

	* programs/msiexec/msiexec.c:
	msiexec: Ignore the TRANSFORMS variable.
	Ignore the TRANSFORMS variable when building a list of transforms for
	advertising.  The variable is used to apply transforms when installing.

	* dlls/msi/action.c, dlls/msi/msipriv.h, dlls/msi/msiquery.c:
	msi: Apply any MSI transforms specified by the TRANSFORMS property.

	* dlls/msi/msi.spec, dlls/msi/msiquery.c:
	msi: Add a stub for MsiGetLastErrorRecord.

	* dlls/msi/dialog.c:
	msi: Fixes for the MaskedEdit control.
	Allow MaskedEdit masks that aren't enclosed with <>.
	Allow the MaskedEdit's edit controls to scroll a bit in case things
	don't line up.

2006-01-04  Robert Reif <reif@earthlink.net>

	* dlls/dsound/capture.c, dlls/dsound/dsound_private.h:
	dsound: Capture cleanup.
	Move code and function prototypes around to eliminate forward
	declarations.  No code is changed.

2006-01-04  Hans Leidekker <hans@it.vu.nl>

	* tools/winapi/winapi_global.pm:
	winapi: Remove some exceptions now that DLL separation is complete.

	* DEVELOPERS-HINTS:
	Subdirectory tools/winapi_check no longer exists.

2006-01-04  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/shell32/shell32_Bg.rc, dlls/shell32/shell32_De.rc,
	  dlls/shell32/shell32_En.rc, dlls/shell32/shell32_Es.rc,
	  dlls/shell32/shell32_Fi.rc, dlls/shell32/shell32_Fr.rc,
	  dlls/shell32/shell32_No.rc, dlls/shell32/shell32_Pt.rc,
	  dlls/shell32/shellpath.c:
	shell32: Create Local AppData for user profile.
	Move history and internet tmp files to Local Settings.

	* dlls/shell32/shell32_Ru.rc:
	shell32: Update Russian resources.

2006-01-04  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/menu.c:
	user32: Menu tracing improvements.

2006-01-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c:
	ntdll: Check file size when mapping image sections to avoid SIGBUS errors.

2006-01-03  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msi/custom.c:
	msi: Report the commandline that failed to start in ERR()s.

2006-01-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/atom.c, dlls/kernel/tests/atom.c:
	kernel32: Implemented atoms query function on top of ntdll ones.

	* dlls/ntdll/atom.c, dlls/ntdll/tests/atom.c,
	  include/wine/server_protocol.h, server/atom.c, server/protocol.def,
	  server/trace.c:
	ntdll: Correct implementation for atom query functions.

2006-01-03  Markus Amsler <markus.amsler@oribi.org>

	* dlls/advpack/advpack.c:
	advpack: Make DoInfInstall return an HRESULT.

2006-01-03  Robert Reif <reif@earthlink.net>

	* dlls/dsound/buffer.c, dlls/dsound/capture.c, dlls/dsound/dsound.c,
	  dlls/dsound/dsound_private.h, dlls/dsound/primary.c,
	  dlls/dsound/propset.c, dlls/dsound/sound3d.c:
	dsound: Remove WINAPI from internal functions.

2006-01-03  Markus Amsler <markus.amsler@oribi.org>

	* dlls/advpack/advpack.c:
	advpack: Fix LaunchInfSection[Ex] documentation.

2006-01-03  Alexandre Julliard <julliard@winehq.org>

	* libs/wpp/wpp.c, tools/widl/widl.c, tools/wrc/wrc.c:
	Support building flex files without debug support.

2006-01-03  Rolf Kalbermatter <rolf.kalbermatter@citeng.com>

	* include/wine/pthread.h, include/winternl.h:
	include: Fix DECLSPEC_NORETURN for compilation with MS C compiler.

2006-01-03  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c, dlls/shell32/tests/shlfolder.c:
	shell32/unixfs: Added unicode support in folder and file pidls.

	* dlls/shell32/pidl.c, dlls/shell32/pidl.h:
	shell32: Helper function for unicode support in folder and file pidls.

2006-01-03  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/menu.c, dlls/user/tests/menu.c:
	user32: Separate menu bitmaps and strings.
	Store bitmaps and bitmaps always in separate fields in the internal
	menu structure.  Get rid of a lot of assumptions in the code that the
	menu can have strings only when it is not some other type and that
	bitmaps come in two flavors.
	Add a lot of conformance tests, including some submitted by Jason
	Edmeades.

2006-01-03  Steven Edwards <winehacker@gmail.com>

	* dlls/gdi/Makefile.in, dlls/gdi/gdi_private.h, dlls/gdi/metafile.c,
	  dlls/gdi/metafile16.c, dlls/gdi/mfdrv/init.c:
	gdi: Win16/32 split of most of the metafile support.

	* dlls/gdi/gdi_private.h, include/wingdi.h:
	gdi: Move EMRSETTEXTJUSTIFICATION structure to the private gdi header.

2006-01-03  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/msacm/msacm32_main.c:
	msacm32: Implement ACM_METRIC_DRIVER_PRIORITY in acmMetrics.

2006-01-03  Robert Reif <reif@earthlink.net>

	* dlls/kernel/module.c:
	kernel: DelayLoadFailureHook crash fix.

2006-01-03  Alexandre Julliard <julliard@winehq.org>

	* libs/wpp/Makefile.in, libs/wpp/ppl.l, programs/winedbg/debug.l,
	  programs/winhelp/macro.lex.l, tools/widl/Makefile.in,
	  tools/widl/parser.l, tools/wrc/Makefile.in, tools/wrc/parser.l:
	Added some flex options to avoid compiler warnings.
	Moved options from the Makefile into the source.

2006-01-03  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Subclass the Richedit control.
	Send a "DoAction" control event when the user scrolls the text.

	* dlls/msi/install.c:
	MSI: Improve the MsiGetMode stub a little.

	* dlls/msi/dialog.c, dlls/msi/events.c, dlls/msi/msipriv.h:
	msi: Implement the Reset control event.

	* dlls/oleaut32/typelib.c:
	oleaut32: Allow _invoke to handle up to 17 parameters.

2006-01-03  Robert Reif <reif@earthlink.net>

	* dlls/dsound/dsound.c:
	dsound Add uninitialized check.

2006-01-03  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/comctl32/listview.c:
	comctl32: Listview - allow selection toggle with ctrl+space.

2006-01-03  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winsock/socket.c:
	winsock: AF_UNSPEC mapping.
	Also map AF_UNSPEC sockaddrs in the sockaddr handlers.
	Zero initialize the sockaddr in ws_sockaddr_alloc().

2006-01-03  Francois Gouget <fgouget@free.fr>

	* dlls/ddraw/tests/dsurface.c, dlls/user/edit.c:
	Assorted spelling fixes

	* dlls/shell32/tests/shlfileop.c, dlls/wined3d/stateblock.c:
	Add trailing '\n's to ok() calls.
	Remove spaces before '\n' in traces.

	* tools/winapi/win32.api:
	winapi: Update win32.api to match the current sources.

	* dlls/msi/msi.c, dlls/wldap32/page.c:
	Small documentation tweaks to avoid winapi_check warnings.

2006-01-03  Francois Gouget <fgouget@codeweavers.com>

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Improve traces.
	Add some traces to make it easier to debug icon generation problems.

2006-01-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/tests/bitmap.c:
	gdi: Add a test which shows that GDI does not support compressed DIB sections.

2006-01-03  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/gdi/dib.c:
	gdi32: Disallow creation of compressed DIB sections.

2006-01-03  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/hglobalstream.c:
	ole: Check the return value of IStream_SetSize in IStream_Read.
	Check the return value of IStream_SetSize in IStream_Read, since
	otherwise execution could continue on and cause heap corruption.

	* dlls/ole32/stg_stream.c:
	ole: Fix mis-handling of return value in StgStreamImpl_Read.
	BlockChainStream_ReadAt returns a BOOL, not an HRESULT so change
	StgStreamImpl_Read to handle this, by returning STG_E_READFAULT on
	failure.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement callback conformance.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Fix race condition in RpcServerListen.
	The DontWait parameter is used for forcing the function not to wait
	for the server to finish.

2006-01-03  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/comctl32/comctl32undoc.c:
	comctrl32: ReAlloc should be able to move memory blocks if necessary.

2006-01-03  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/tests/main.c:
	secur32: Rewrote NTLM tests in a more flexible way.

2006-01-03  Vitaliy Margolen <wine-patch@kievinfo.com>

	* server/snapshot.c:
	server: Fix va_list compile error.

	* dlls/gdi/driver.c, dlls/user/tests/monitor.c:
	gdi: Device name returned from EnumDisplayDevices is valid for CreateDC.

	* dlls/advapi32/service.c:
	advapi32: Don't allocate memory for empty argument string and pass
	NULL instead.

2005-12-31  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/Makefile.in, dlls/wldap32/control.c, dlls/wldap32/misc.c,
	  dlls/wldap32/page.c, dlls/wldap32/parse.c, dlls/wldap32/search.c,
	  dlls/wldap32/winldap_private.h:
	wldap32: Implement some page handling functions.
	Implement ldap_create_page_control{A,W} and
	ldap_parse_page_control{A,W}.
	Move the page handling functions into their own file.

	* dlls/wldap32/extended.c:
	wldap32: Document the functions that handle extended operations.

	* dlls/wldap32/init.c:
	wldap32: Document the init functions.
	Fix two bugs.

2005-12-31  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winecfg/x11drvdlg.c:
	winecfg: Default for DXGrab is NO.

2005-12-31  Milko Krachounov <milko@3mhz.net>

	* programs/winecfg/Bg.rc:
	winecfg: Fix a mess with the Bulgarian resource file and translate the
	untranslated strings.

2005-12-31  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/protocol.c:
	urlmon: Added http protocol tests (currently failing in Wine).

2005-12-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/tests/exception.c:
	ntdll/tests: Try to fail more gracefully on win9x.
	Link to NtCurrentTeb dynamically.

2005-12-31  Dan Kegel <dank@kegel.com>

	* dlls/commdlg/colordlg.c:
	commdlg: Let the color picker respond properly to keystrokes.

2005-12-31  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/urlcache.c:
	wininet: Handle the cache being full better in CommitUrlCacheEntryInternal.
	Move the freeing of allocation blocks for an entry into
	URLCache_DeleteEntry.
	Call URLCache_DeleteEntry to rollback from failure in
	CommitUrlCacheEntryInternal.

	* dlls/wininet/urlcache.c:
	wininet: Create new hash tables for URL cache on demand.

	* dlls/wininet/urlcache.c:
	wininet: Move URL cache hash table creation to a separate function.

2005-12-31  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/umon.c:
	urlmon: Removed not used code.

2005-12-31  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Output sizing information for arrays in the generated marshaling code.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/proxy.c:
	widl: Export the bracket adding functionality of do_write_expr outside
	of header.c.

2005-12-31  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	msi: Change some FIXME messages to comments.

	* dlls/msi/package.c:
	msi: Define the property "Intel" if we're running on an Intel processor.

	* dlls/msi/action.c:
	msi: Add stub actions for CCPSearch and RMCCPSearch.

	* dlls/riched20/reader.c:
	riched20: Add newlines to ERR macro output.

2005-12-31  Robert Reif <reif@earthlink.net>

	* dlls/comctl32/ipaddress.c:
	comctl32: Create ipaddress in enabled state.

2005-12-31  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/wined3d/directx.c, dlls/wined3d/surface.c:
	wined3d: Added support for WINED3DFMT_X4R4G4B4.

2005-12-31  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/value.c:
	wldap32: Document the value handling functions.

	* dlls/wldap32/wldap32.h:
	wldap32: Copy embedded berval structures too.

2005-12-31  Henning Gerhardt <henning.gerhardt@web.de>

	* programs/winecfg/De.rc:
	winecfg: Update German resource.

2005-12-31  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Fix error handling in PSM_ADDPAGE in case of memory
	allocation failure.

2005-12-26  Yuval Fledel <yuvalfl@gmail.com>

	* programs/winetest/Makefile.in:
	winetest: Only include d3d9 if it is being built.

2005-12-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/sec_mgr.c, dlls/urlmon/tests/misc.c:
	urlmon: Added GetSecurityId implementation.

	* dlls/urlmon/binding.c, dlls/urlmon/tests/url.c, dlls/urlmon/umon.c:
	urlmon: Use pluggable protocol for file protocol.

2005-12-26  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Fix merge conflict.

	* tools/widl/typegen.c:
	widl: Follow type references in procformat and typeformat string generation.

	* tools/widl/typegen.c:
	widl: Handle marshaling and unmarshaling structures.

	* tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/server.c:
	widl: Out parameters.
	Marshall and unmarshall out parameters for servers and clients
	respectively.
	Write out array components for declared local variables in generated
	server code.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Remove some duplication.
	Remove some duplicated code by calling an improved
	get_required_buffer_size.
	Add some more newlines in the generated code to separate separate
	stages.
	Calculate the buffer size of [out] arguments in generated server code.
	Fix the direction passed into unmarshall_arguments.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Pass a state into marshall_arguments and unmarshall_arguments to
	decide which parameters should be considered based on their direction.

	* tools/widl/typegen.c:
	widl: Generate marshaling and unmarshaling statements for arrays.

	* tools/widl/typegen.c:
	widl: Treat variables with array indices the same as pointers.

	* tools/widl/typegen.c:
	widl: Advance the type format string whilst marshaling and
	unmarshaling arguments.

	* tools/widl/typegen.c:
	widl: Convert the main while loops in marshall_arguments and
	unmarshall_arguments into for loops.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Add support for marshalling and unmarshalling conformant strings.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y,
	  tools/widl/proxy.c, tools/widl/write_msft.c:
	widl: Add some const attributes.

	* tools/widl/typegen.c:
	widl: Prepare marshall and unmarshall code generation functions for
	accepting pointers.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c:
	widl: Fix SEGVs with client and server code generation when an
	interface has no methods.

	* tools/widl/typegen.c:
	widl: Generate correct proc format strings for [out] and [in, out] parameters.

	* tools/widl/parser.y:
	widl: Use the same precendence rule for the conditional operator as in wpp.
	Fixes several shift/reduce warnings.

	* tools/widl/typegen.c:
	widl: Better array support.
	Treat variables with array indices the same as pointers when writing
	out the proc & type format strings.
	Fix a typo when writing out the proc format string where a non-return
	type was written out for a return type and vice-versa.

	* tools/widl/typegen.c:
	widl: Support non-basic variables in proc format strings.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Add helper functions that return the size of procformat and
	typeformat strings for variables.

	* dlls/oleaut32/typelib.c:
	oleaut: Small re-organisation of ITypeInfo::Invoke.
	Only output the one function in the trace for ITypeInfo::Invoke.
	Process the return value on output in ITypeInfo::Invoke, but only copy
	it to pVarResult if pVarResult is not NULL.

	* dlls/oleaut32/typelib.c:
	oleaut32: Convert some tabs to spaces and some other formatting changes.

	* dlls/oleaut32/typelib.c:
	oleaut32: Initialize member IDs to MEMBERID_NIL inITypeInfo::GetIDsOfNames.
	Better tracing.

	* dlls/oleaut32/typelib.c:
	ole: Improve typelib traces.
	Move the debug channel check from dump_TLBFuncDesc[One] to its callers
	for more flexibility in which channel controls the output.

2005-12-26  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/msvcrt/tests/printf.c:
	msvcrt: More printf tests for I64 integer size support.

	* dlls/msvcrt/wcs.c:
	msvcrt: pf_integer_conv for I64.
	- Add pf_integer_conv and pf_is_integer_format.
	- Update pf_fill to handle printing the sign for signed integers.
	- Handle I64 integer sizes using pf_integer_conv and pf_output_format_A.

	* dlls/msvcrt/wcs.c:
	msvcrt: Do not treat %ll as an IntegerDouble in printf.

	* dlls/msvcrt/tests/printf.c, dlls/msvcrt/wcs.c:
	msvcrt: Parse I, I32, and I64 integer size flags in printf.

2005-12-26  Rolf Kalbermatter <rolf.kalbermatter@citeng.com>

	* dlls/urlmon/umon.c, dlls/urlmon/urlmon.spec:
	urlmon: Implement BindAsyncMoniker function.

2005-12-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/file.c, dlls/urlmon/tests/protocol.c:
	urlmon: URL with two slashes is valid.

2005-12-26  Alexander N. Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Updated Norwegian Bokmål resources.

2005-12-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: Fix UrlCanonicalize.
	- Added support for URL_FILE_USE_PATHURL.
	- Fix handling of '/' and '\'.

2005-12-26  Rolf Kalbermatter <rolf.kalbermatter@citeng.com>

	* dlls/msrle32/msrle32.c:
	msrle32: Spelling fix.

2005-12-26  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/symbol.c, include/dbghelp.h:
	dbghelp: Internal search routines can now be case sensitive/insensitive.
	- Now handling option SYMOPT_CASE_INSENSITIVE for symbol search.
	- Quick implementation of SymSearch on top of SymEnumSymbols (should
	be the other way around).

2005-12-26  Maxime Bellengé <maxime.bellenge@wanadoo.fr>

	* dlls/msvcrt/main.c:
	msvcrt: Prevent a crash if TlsGetValue returns NULL in DLL_THREAD_DETACH.

2005-12-26  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/propvariant.c:
	Fix detection of V1a prop variant library in test suite.

2005-12-26  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/x11drv/keyboard.c:
	x11drv: Update Canadian keyboard layout to better match the X11 one

2005-12-26  James Hawkins <truiken@gmail.com>

	* dlls/shell32/tests/shlfileop.c:
	shell32: Clean up the SHFileOperation tests.
	- Make sure to create all the files used by the new tests.
	- Add a couple more SHFileOperation tests.
	- Fix some of the old tests.

2005-12-26  Robert Reif <reif@earthlink.net>

	* programs/winecfg/audio.c:
	winecfg: Use hourglass cursor when opening audio drivers.
	Misbehaving drivers can take a while to open so change to the hour
	glass cursor when opening them.

2005-12-26  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/atl/atl.spec, dlls/atl/atl_main.c:
	atl: Implement AtlComPtrAssign.
	According to MSDN AtlModuleInit should initialize the modules critical
	sections.

2005-12-22  Alexandre Julliard <julliard@winehq.org>

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

----------------------------------------------------------------
2005-12-22  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/tests/shlfolder.c:
	shell32: Added some test to document native ITEMIDLIST format.

2005-12-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/tests/msg.c:
	user/tests: Remove todo_wine from a few tests that (usually) succeed.

2005-12-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/mciavi32/mciavi.c, dlls/mciavi32/private_mciavi.h:
	mciavi32: Rewrite asynchronous MCI_PLAY command handling.
	Rewrite asynchronous MCI_PLAY command handling in MCIAVI driver, make
	it more responsive to commands in the MCI_MODE_PLAY state by checking
	hStopEvent even if the time frame between frames has expired.

2005-12-22  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/ole32/stg_stream.c, dlls/ole32/storage32.c, dlls/ole32/storage32.h,
	  include/winerror.h:
	ole32: Return error instead of asserting if storage file is corrupt.

2005-12-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/msg.c:
	user32/tests: Add a PeekMessage test.

2005-12-22  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/tests/console.c:
	kernel/tests: Check that we successfully open the console.

2005-12-22  Alexandre Julliard <julliard@winehq.org>

	* server/console.c:
	server: Fixed console access rights handling.

2005-12-22  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/opengl32/wgl.c, dlls/opengl32/wgl_ext.c, dlls/opengl32/wgl_ext.h:
	opengl: Fix last wgl regression.
	Fix wgl regression: test glx server version and extensions to use (and
	not use glXQueryDrawable on older glx implementations).

2005-12-22  James Hawkins <truiken@gmail.com>

	* dlls/shell32/tests/shlfileop.c:
	shell32: Add tests for SHFileOperation's FO_MOVE command.

	* dlls/shell32/tests/shlfileop.c:
	shell32: Add tests for SHFileOperation's FO_COPY command.

	* dlls/shell32/tests/shlfileop.c:
	shell32: Add tests for SHFileOperation's FO_RENAME command.

	* dlls/shell32/tests/shlfileop.c:
	shell32: Add tests for SHFileOperation's FO_DELETE command.

2005-12-22  Robert Reif <reif@earthlink.net>

	* programs/winecfg/En.rc, programs/winecfg/x11drvdlg.c:
	winecfg: Add unmanaged windows configuration.

2005-12-22  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/module.c:
	dbghelp: Correct handling for all module names.

2005-12-21  Bill Medland <billmedland@mercuryspeed.com>

	* dlls/msi/format.c, dlls/msi/tests/format.c:
	msi: Prevent array underflow in MsiFormat when measuring with zero-length buffer.

2005-12-21  James Hawkins <truiken@gmail.com>

	* dlls/shell32/tests/shlfileop.c:
	shell32: Remove the '.\\' prefix from filenames, because it hides a
	bug in SHFileOperation.

2005-12-21  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/ddraw/surface_main.c, dlls/ddraw/tests/dsurface.c:
	ddraw: Fix DirectDrawSurface::QueryInterface crash.

2005-12-21  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/winspool.rc, include/wine/wine_common_ver.rc:
	winspool: Add version resource.

2005-12-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/msvcrt.h, dlls/msvcrt/time.c:
	msvcrt: Return a per-thread buffer in localtime and gmtime.

2005-12-21  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/shader.c:
	d3d9: Add traces for when shader support is missing in the shader test.

2005-12-21  Hans Leidekker <hans@it.vu.nl>

	* dlls/kernel/process.c:
	kernel: Some documentation improvements.

2005-12-21  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msvcrt/main.c, dlls/msvcrt/msvcrt.h, dlls/msvcrt/msvcrt.spec,
	  dlls/msvcrt/time.c:
	msvcrt: Implemented wctime(), wasctime().
	Free thread data in DLL_THREAD_DETACH.

2005-12-21  Robert Reif <reif@earthlink.net>

	* programs/winecfg/En.rc, programs/winecfg/audio.c,
	  programs/winecfg/resource.h:
	winecfg: Select an audio driver on fresh install.

2005-12-21  Saulius Krasuckas <saulius2@ar.fi.lt>

	* dlls/mscms/tests/profile.c:
	mscms: Test only one invalid GetStandardColorSpaceProfile() param in a
	single check.

2005-12-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvideo/mciwnd.c:
	msvideo: Handle ESC key press in the MCIWND class as an alias to stop command.

2005-12-21  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/msvcrt/tests/printf.c, dlls/msvcrt/wcs.c:
	msvcrt: Fix printf sign flags.
	Fix the printf sign flags so that '+' doesn't always override ' '
	space alone.  If they both appear, continue parsing and let '+' take
	precedence.

2005-12-21  Alexandre Julliard <julliard@winehq.org>

	* server/context_alpha.c, server/context_i386.c, server/context_powerpc.c,
	  server/context_sparc.c, server/context_x86_64.c:
	server: Set the context flags in get_thread_context to indicate which
	parts of the returned context are valid.

2005-12-21  Hans Leidekker <hans@it.vu.nl>

	* configure, configure.ac, dlls/wldap32/misc.c, dlls/wldap32/parse.c,
	  include/config.h.in:
	wldap32: Added configure checks for some potentially missing functions.

2005-12-20  Bill Medland <billmedland@mercuryspeed.com>

	* dlls/msi/dialog.c:
	msi: Use a default dialog font if nothing is specified.

2005-12-20  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/tests/shlfolder.c:
	shell32/tests: Fixed a test failing on WinXP.

2005-12-20  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/dbghelp.spec,
	  dlls/dbghelp/wdbgexts.h:
	dbghelp: Added a few extensions to make windbg happy.

2005-12-20  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/msvcrt/tests/printf.c, dlls/msvcrt/wcs.c:
	msvcrt: Ignore PadZero when LeftAlign is true in printf conversions.

2005-12-20  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/msacm/driver.c, dlls/msacm/tests/msacm.c:
	msacm: Preserve value of cbStruct in acmDriverDetails.
	Ensure that the cbStruct member of the ACMDRIVERDETAILS[AW] struct is
	filled with a valid value before returning.
	Fill the cbStruct member of the ACMDRIVERDETAILS[AW] before sending a
	ACMDM_DRIVER_DETAILS message to an installed codec that might be a
	native library: native ACM codecs expect cbStruct to be valid before
	filling the rest of the struct with any data.

2005-12-20  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/exception.c:
	ntdll: Made DBG_EXCEPTION_HANDLED a synonym of DBG_CONTINUE for exception handlers.

2005-12-20  Paul Vriens <paul.vriens@xs4all.nl>

	* programs/winecfg/Nl.rc:
	winecfg: Dutch resources update.

2005-12-20  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	wined3d: Cleanup shader constants code a little bit.
	Improved bounds checking.

2005-12-19  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/msvcrt/tests/printf.c, dlls/msvcrt/wcs.c:
	msvcrt: Require exact uppercase and lowercase format in printf routines.

2005-12-19  Bill Medland <billmedland@mercuryspeed.com>

	* programs/winemenubuilder/winemenubuilder.c, tools/wineshelllink:
	winemenubuilder: Provide depth to the menus created.

2005-12-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c:
	kernel32: Check for tabs too when extracting the program name
	(reported by Vitaliy Margolen).

2005-12-19  Hans Leidekker <hans@it.vu.nl>

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/typegen.c:
	widl: Avoid lvalue casts in generated code.

2005-12-19  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Adding AcceptSecurityContext to the NTLM security provider.

2005-12-19  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool: Filter additional failures.

2005-12-19  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winhelp/winhelp.c:
	winhelp: Handle '> ' on command lines.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/msc.c, dlls/dbghelp/stabs.c, dlls/dbghelp/type.c:
	dbghelp: First stab at supporting calling convention in function signature.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/symbol.c:
	dbghelp: Return proper size for local & parameters in SYMBOL_INFO.

2005-12-19  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/winecfg/Fr.rc:
	winecfg: Updated French resources.

2005-12-19  Aric Stewart <aric@codeweavers.com>

	* dlls/user/Makefile.in, dlls/user/edit.c:
	user: Make the edit control IME aware and implement inline editing.
	Makes for a significantly better user experience for CJK users.

2005-12-19  Magnus Olsen <magnus@itkonsult-olsen.com>

	* dlls/msi/format.c:
	msi: Fixed deformat_environment to not cut off string.

2005-12-19  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/taskmgr/dbgchnl.c:
	taskmgr: Fix viewing of debug channels.
	Various internal cleanups.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/symbol.c, include/dbghelp.h:
	dbghelp: Implemented SymMatchString.

2005-12-19  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/winproc.c:
	user: Fix LB_GETTEXT unmapping for A<->W.

2005-12-19  Thomas Weidenmueller <w3seek@reactos.com>

	* dlls/setupapi/misc.c:
	setupapi: Fix comparing the group SIDs in IsUserAdmin.

2005-12-19  Huw Davies <huw@codeweavers.com>

	* dlls/opengl32/wgl.c, dlls/x11drv/init.c, dlls/x11drv/opengl.c:
	opengl: Add support for rendering on bitmaps.

2005-12-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/ole32/rpc.c:
	ole32: Revert exception handler change.
	The handler does the opposite of normal page fault handlers.

2005-12-19  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/tests/win.c:
	user: Fix hrgn leaks in win.c test.

2005-12-19  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/tests/.gitignore, dlls/comctl32/tests/Makefile.in,
	  dlls/comctl32/tests/tooltips.c, dlls/comctl32/tooltips.c:
	comctl32: Add a test for the initial tooltip window style settings,
	make it pass under Wine.

2005-12-19  Henning Gerhardt <henning.gerhardt@web.de>

	* programs/winecfg/De.rc:
	winecfg: Update German resource.

2005-12-19  Rein Klazes <wijn@wanadoo.nl>

	* programs/wcmd/batch.c:
	wcmd: Increase maximum length of commands.
	Increase maximum length of commands to 8192 bytes as on Windows XP.
	Add needed braces to a multi line "if" statement.

2005-12-19  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec:
	dbghelp: New stubs (needed for windbg startup).

	* dlls/dbghelp/elf_module.c:
	dbghelp: Fixed loading .so modules from a living target.

	* dlls/dbghelp/stack.c:
	dbghelp: Fixed missing parameters info in StackWalk64.

2005-12-19  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/d3d9/tests/stateblock.c:
	d3d9: Don't crash on NULL device_ptr.

2005-12-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/signal_i386.c, tools/winebuild/relay.c:
	ntdll: Make __wine_call_from_32_restore_regs take a context pointer.
	Changed exception raise functions to call it explicitly.

2005-12-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/file.c, dlls/urlmon/tests/protocol.c:
	urlmon: Added handling of BINDF_FROMURLMON in file protocol.

	* dlls/mshtml/tests/protocol.c, include/urlmon.idl:
	Fix typo in urlmon.idl.

2005-12-19  Lauri Tulmin <tulmin@gmail.com>

	* dlls/user/edit.c, dlls/user/tests/edit.c:
	user32: Don't truncate text when creating edit control.

2005-12-19  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/tests/win.c, dlls/x11drv/scroll.c:
	x11drv: Do not use the scroll rectangle for clipping in ScrollDC.
	With a conformance test.

2005-12-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/file.c, dlls/urlmon/tests/protocol.c:
	urlmon: Added some tests and fixes of file protocol.

2005-12-19  Alexander N. Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Updated Norwegian Bokmaal resources.

2005-12-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/relay.c,
	  tools/winebuild/build.h, tools/winebuild/import.c,
	  tools/winebuild/spec32.c, tools/winebuild/utils.c:
	ntdll: New implementation of relay thunks.
	New implementation of relay thunks that doesn't require modifying code
	on the fly, so that the thunks can be put in the text section.
	Some performance improvements.

2005-12-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c, dlls/ntdll/thread.c, dlls/ntdll/virtual.c:
	ntdll: Don't use a real guard page at the bottom of the stack.
	A no-access page is enough, we can't properly raise an overflow
	exception anyway.

2005-12-17  Robert Reif <reif@earthlink.net>

	* programs/winecfg/.gitignore, programs/winecfg/Bg.rc,
	  programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Ja.rc,
	  programs/winecfg/Ko.rc, programs/winecfg/Makefile.in,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/audio.c,
	  programs/winecfg/main.c, programs/winecfg/resource.h,
	  programs/winecfg/winecfg.c, programs/winecfg/winecfg.h,
	  programs/winecfg/winecfg.rc:
	winecfg: Use sound tree view for driver selection.
	- Move driver selection and configuration into tree view.
	- Only show loadable drivers.

	* dlls/winmm/wineoss/midi.c:
	wineoss: Shorten MIDI names.
	Shorten MIDI names to fit into 32 byte array without overflow.

2005-12-17  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/tests/cert.c:
	crypt32: Implement more implicit properties, with tests.

2005-12-17  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/imagehlp/imagehlp.spec:
	imagehlp: Forward StackWalk64 to dbghelp.StackWalk64.

2005-12-17  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/win.c, dlls/x11drv/scroll.c:
	x11drv: ScrollDC should not clip output if a clipping rect is not specified.
	Add a ScrollDC test with NULL clipping rect.
	Add another set of ScrollDC tests written by Rein Klazes.

2005-12-16  Huw Davies <huw@codeweavers.com>

	* dlls/x11drv/opengl.c:
	x11drv: Get the visual for the GLXPixmap from the current pixel format.

2005-12-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/crypt32/cert.c, dlls/crypt32/encode.c, dlls/dbghelp/msc.c,
	  dlls/ddraw/main.c, dlls/kernel/atom.c, dlls/kernel/computername.c,
	  dlls/kernel/file.c, dlls/kernel/heap.c, dlls/kernel/ne_module.c,
	  dlls/kernel/resource.c, dlls/kernel/string.c, dlls/kernel/virtual.c,
	  dlls/msvcrt/cpp.c, dlls/ntdll/debugtools.c, dlls/ntdll/loader.c,
	  dlls/ntdll/relay.c, dlls/ntdll/resource.c, dlls/ntdll/sec.c,
	  dlls/ole32/rpc.c, dlls/user/cursoricon.c, dlls/user/lstr.c,
	  dlls/winmm/driver.c, dlls/winmm/lolvldrv.c:
	Take advantage of the __EXCEPT_PAGE_FAULT macro.

	* dlls/ntdll/exception.c, include/wine/exception.h:
	Exception handling: Added a magic __EXCEPT_PAGE_FAULT macro to make it
	easier to handle the common case of trapping page faults.

	* dlls/kernel/heap.c, dlls/kernel/ne_module.c, dlls/kernel/resource.c,
	  dlls/ntdll/resource.c, dlls/ole32/rpc.c, dlls/user/lstr.c:
	We no longer need to handle EXCEPTION_PRIV_INSTRUCTION on page faults.

	* dlls/ntdll/signal_i386.c, dlls/ntdll/tests/.gitignore,
	  dlls/ntdll/tests/Makefile.in, dlls/ntdll/tests/exception.c:
	ntdll: More compatible exception information for protection faults.
	Added a bunch of test cases.

2005-12-16  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/vertexdeclaration.c:
	wined3d: Vertex declaration cleanup.
	Clean up constants and the wine declaration when the vertex
	declaration is destroyed.

	* dlls/wined3d/device.c:
	wined3d: Allow NULL multi sample quality.
	Allow MultiSampleQuality to be passed as NULL, this is a
	requirement for DirectX 8 and lower.

2005-12-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/kernel32.spec, dlls/msvcrt/msvcrt.spec,
	  dlls/ntdll/ntdll.spec:
	Add -register hint in ntdll, kernel and msvcrt spec files.

	* tools/winebuild/parser.c, tools/winebuild/winebuild.man.in:
	winebuild: Allow -register flag for Win32 too.
	This way it can be used as hint for the relay code.

2005-12-16  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/encode.c, dlls/crypt32/tests/encode.c:
	crypt32: Implement CRLDistPoints encoding/decoding.
	- rewrite sequence decoding to support context-specific tags, and
	eliminate duplicated code
	- implement encoding and decoding of CRLDistPoints

2005-12-16  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/shell32/shellpath.c, include/shlobj.h:
	shell32: Fix return value of PathProcessCommand.

2005-12-16  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c, dlls/urlmon/tests/url.c:
	urlmon: Fix BindToStorage test.

	* include/mshtmdid.h, include/mshtml.idl:
	Added some declarations to mshtml.idl.

	* tools/widl/parser.l, tools/widl/parser.y, tools/widl/widltypes.h:
	widl: Added bindable and displaybind attributes handling.

2005-12-16  Milko Krachounov <milko@3mhz.net>

	* programs/winecfg/Bg.rc:
	winecfg: Update Bulgarian resource.

2005-12-16  José Manuel Ferrer Ortiz <jmfo1982@yahoo.es>

	* programs/uninstaller/Es.rc:
	uninstaller: Spanish translations update.

	* programs/winecfg/Es.rc, programs/winecfg/winecfg.rc:
	winecfg: Spanish translations update.

2005-12-16  Ragnvald "Despair" Maartmann-Moe IV <despair@adelphia.net>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Fix matrix copy/paste bug.

2005-12-16  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c:
	wined3d: Vertex declaration recording state.
	Stop SetVertexDeclaration from reference counting if a stateblock is
	being recorded.

2005-12-16  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/sysparams.c, dlls/user/tests/sysparams.c:
	user32: Implement saving and fix reading of nonclient metrics.
	With conformance tests.

2005-12-16  Tomas Carnecky <tom@dbservice.com>

	* dlls/x11drv/opengl.c:
	x11drv: Allow users to preload an OpenGL library.

2005-12-16  Ivan Leo Puoti <ivanleo@gmail.com>

	* include/ddk/wdm.h:
	Add some structs/prototypes to wdm.h.

2005-12-15  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/setupapi.spec, dlls/setupapi/stubs.c, include/setupapi.h:
	setupapi: Added stubs for SetupGetInfInformation and
	SetupQueryInfFileInformation.

2005-12-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/ntdll.spec, dlls/ntdll/rtl.c:
	ntdll: Reimplemented _chkstk and _alloca_probe directly in assembly.

2005-12-15  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl:
	mshtml: Fix handling Gecko strings.

	* dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl:
	mshtml: Set Gecko's profile.
	Make sure that Gecko components are registered.

2005-12-15  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c:
	wined3d: Internal reference counting.
	Change most references to resources parent into references to the
	resource, so that external reference counts match DirectX but object
	aren't released if they are still referenced by the stateblock.

2005-12-15  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/mscms/tests/profile.c:
	mscms: Add another possible error.

	* dlls/d3d9/tests/vertexdeclaration.c:
	d3d9: Don't treat missing d3d9.dll as a failure.

2005-12-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/iccvid/iccvid.c:
	iccvid: Add support for ICM_DECOMPRESS_END message.

2005-12-14  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/sysparams.c, dlls/user/tests/sysparams.c:
	user: Read/save minimized metrics from/to registry.

2005-12-14  Alexandre Julliard <julliard@winehq.org>

	* loader/preloader.c:
	preloader: Reserve some space for the shared user data.

	* dlls/ntdll/virtual.c:
	ntdll: Fixes in virtual memory protection flags.
	Tweak reporting of virtual protection flags and address space limit to
	yield results closer to what Windows does.

2005-12-14  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/.gitignore, dlls/d3d9/tests/Makefile.in,
	  dlls/d3d9/tests/vertexdeclaration.c:
	d3d9: Add a test for Get/SetVertexDeclaration refcounts.

	* dlls/wined3d/vertexdeclaration.c:
	wined3d: Return the correct parent in IWineD3DVertexDeclarationImpl_GetParent.

	* dlls/d3d9/vertexshader.c:
	d3d9: Check for a NULL shader in IDirect3DDevice9Impl_GetVertexShader
	before getting the parent.

2005-12-14  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/sync.c, dlls/kernel/tests/pipe.c, dlls/ntdll/file.c,
	  include/wine/server_protocol.h, include/winioctl.h,
	  server/named_pipe.c, server/protocol.def, server/trace.c:
	ntdll: Implement FSCTL_PIPE_WAIT NtFsControlFile ioctl.
	Implement FSCTL_PIPE_WAIT NtFsControlFile ioctl.
	Modify WaitNamedPipeW to use NtFsControlFile.
	Replace struct overlapped with event.

2005-12-14  Mike McCormack <mike@codeweavers.com>

	* programs/winecfg/Ko.rc:
	winecfg: Update Korean translation.

2005-12-14  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/d3d9/tests/shader.c, dlls/d3d9/tests/stateblock.c:
	d3d9: Don't treat missing d3d9.dll as a failure.

2005-12-14  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Return the correct vertex declaration.
	In IWineD3DDeviceImpl_GetVertexDeclaration, return the vertex
	declaration in This->stateblock instead of the one in
	This->updateStateBlock.

2005-12-14  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/riched20/editor.c:
	riched20: Reset selection when text is reset.

2005-12-14  Aric Stewart <aric@codeweavers.com>

	* dlls/user/clipboard.c:
	user: GetClipboardFormatNameA fix.
	In the W->A translation make sure we have characters to translate
	before doing the WideCharToMultiByte with -1.

2005-12-13  Saulius Krasuckas <saulius2@ar.fi.lt>

	* dlls/mscms/tests/profile.c:
	mscms: Move repetitive code to helper macros.

2005-12-13  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/x11drv/scroll.c:
	x11drv: ScrollDC fix.
	There is no need to offset the source rectangle in the reverse
	direction before scrolling.

2005-12-13  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/internet.c, dlls/wininet/internet.h,
	  dlls/wininet/tests/http.c:
	wininet: HTTP headers reworking.
	Redo how headers are handled, eliminating the concept of Standard
	Headers and allow all headers to be added multiple times.
	Allow querying of headers with an index to get the multiple headers.
	Respect response vs request headers in HttpQueryInfo.
	Add a number of tests to extensively test header adding and replacing.

2005-12-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi/bitmap.c:
	gdi: Added support for doing GetBitmapBits on a DIB section.
	Simply copy the DIB bits in that case.

	* dlls/x11drv/dib.c:
	x11drv: Clipping fix with DIB section copy.
	Use the GC of the destination device in X11DRV_DIB_CopyDIBSection so
	that the clipping region is taken into account.

2005-12-13  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/.gitignore, dlls/d3d9/tests/Makefile.in,
	  dlls/d3d9/tests/shader.c:
	d3d9: Add a test for Get/SetVertexShader and Get/SetPixelShader refcounts.

2005-12-13  Alexandre Julliard <julliard@winehq.org>

	* server/mailslot.c, server/named_pipe.c:
	server: Added get_file_info implementation for named pipe and mailslot devices.

	* server/mailslot.c, server/named_pipe.c:
	server: Fixed refcounting in get_fd requests for named pipe and mailslot devices.

2005-12-13  Robert Shearman <rob@codeweavers.com>

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Start generating type format strings.
	Based on a patch by Eric Kohl.

2005-12-13  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/server.c:
	widl: Server stubs in generated code are void functions.

2005-12-13  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winecfg/audio.c:
	winecfg: Simplified module handling code.

2005-12-13  Marcus Meissner <marcus@jet.franken.de>

	* dlls/wininet/http.c:
	wininet: Reinitialise NETCON on redirect.

2005-12-13  Juan Lang <juan_lang@yahoo.com>

	* dlls/iphlpapi/ifenum.c:
	iphlpapi: Fix a couple of file descriptor leaks.

2005-12-13  Eric Pouech <eric.pouech@wanadoo.fr>

	* tools/winedump/le.c, tools/winedump/ne.c:
	winedump: Const correctness fixes.

2005-12-13  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/encode.c, dlls/crypt32/tests/encode.c:
	crypt32: Decode cleanups.
	- implement a helper to decode sequences of like types
	- use helper functions wherever applicable when decoding
	- correct "expected" vs. "got" usage in tests
	- fix a few other small bugs

2005-12-13  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Don't change the shader's refcount in SetVertexShader and
	SetPixelShader.

2005-12-13  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/cubetexture.c:
	wined3d: Cube texture named constants.
	Update cubetexture so that names constants instead of numeric
	constants are used for the facetype and also add some additional
	checks where facetype is passed as a parameter to the function.

2005-12-12  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/shell32/tests/shlfolder.c:
	shell32/tests/shlfolder.c: ILFindLastID has to be called by ordinal.

	* dlls/mscms/tests/profile.c:
	mscms: Add another possible error.

2005-12-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c, dlls/ntdll/signal_i386.c, dlls/ntdll/thread.c,
	  dlls/ntdll/virtual.c:
	TEB.StackLimit should not include the guard page.

	* dlls/kernel/kernel_private.h, dlls/kernel/process.c,
	  dlls/kernel/thread.c:
	kernel: Moved main stack initialization to process.c.

	* server/fd.c:
	server: Don't enable polling on regular files in add_queue.

	* dlls/kernel/comm.c, dlls/kernel/sync.c, dlls/ntdll/directory.c,
	  dlls/ntdll/file.c, dlls/ntdll/server.c, dlls/ntdll/virtual.c,
	  dlls/winedos/int13.c, dlls/winsock/socket.c:
	Pass specific access rights to wine_server_handle_to_fd.

	* dlls/kernel/tests/sync.c, dlls/ntdll/server.c, server/directory.c,
	  server/fd.c, server/file.c, server/file.h, server/mailslot.c,
	  server/mapping.c, server/named_pipe.c, server/object.c,
	  server/process.c, server/registry.c, server/serial.c, server/sock.c:
	server: Added access rights mapping to file objects.

	* server/process.c, server/thread.c:
	server: Added access rights mapping to process and thread objects.

	* server/registry.c:
	server: Added access rights mapping to registry key objects.

	* server/symlink.c:
	server: Added access rights mapping to symlink objects.

	* server/token.c:
	server: Added access rights mapping to token objects.

	* server/event.c, server/mutex.c, server/semaphore.c, server/timer.c:
	server: Added access rights mapping to synchronization objects.

	* server/atom.c, server/change.c, server/clipboard.c, server/console.c,
	  server/debugger.c, server/directory.c, server/event.c, server/fd.c,
	  server/file.c, server/handle.c, server/hook.c, server/mailslot.c,
	  server/mapping.c, server/mutex.c, server/named_pipe.c,
	  server/object.c, server/object.h, server/process.c, server/queue.c,
	  server/registry.c, server/request.c, server/semaphore.c,
	  server/serial.c, server/signal.c, server/snapshot.c, server/sock.c,
	  server/symlink.c, server/thread.c, server/timer.c, server/token.c,
	  server/winstation.c:
	server: Added infrastructure for access rights mapping.

	* server/mailslot.c:
	server: Allow the mailslot device to be opened as a file object.

	* server/named_pipe.c:
	server: Allow the named pipe device to be opened as a file object.

	* dlls/kernel/file.c, dlls/ntdll/directory.c, dlls/ntdll/file.c,
	  include/wine/server_protocol.h, server/fd.c, server/file.h,
	  server/protocol.def, server/request.h, server/trace.c:
	server: Support for opening devices.
	Added support for opening devices directly with the server when they
	don't correspond to a Unix file.

	* server/mapping.c, server/trace.c:
	server: Use a better error code for a zero-size mapped file.

2005-12-12  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/dosmem.c, dlls/kernel/kernel32.spec,
	  dlls/kernel/kernel_private.h, dlls/winedos/int31.c:
	kernel32: Get rid of DOSMEM_AllocSelector.

2005-12-12  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/Makefile.in, dlls/winspool/tests/info.c:
	winspool: Added tests for OpenPrinter.

2005-12-12  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shlview.c:
	shell32: Fix drag-scrolling in the shellview object.

	* dlls/ole32/ole2.c:
	ole32: Periodically call IDropTarger::DragOver during Drag&Drop.

2005-12-12  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/msvcrt/msvcrt.h, dlls/ntdll/relay.c, dlls/ole32/ole16.c:
	Functions with no paramters must be (void).

2005-12-12  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Generate FC_ERROR_STATUS_T proc format.
	- Include the header file for the functions implemented in typegen.c.
	- Generate proc format for FC_ERROR_STATUS_T type.

	* tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/server.c:
	widl: Support explicit binding handles.

	* tools/widl/server.c:
	widl: Zero initialize parameters in the generated server code.
	Zero initialize parameters in the generated code. Based on a patch by
	Eric Kohl.

	* tools/widl/client.c:
	widl: Calculate the size of buffer required.
	- Calculate the size of buffer required.
	- Fix a typo.
	- Set the buffer start and buffer end markers.

	* tools/widl/server.c:
	widl: Don't cast buffer pointers to long in generated server code.

2005-12-12  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/client.c, tools/widl/server.c:
	widl: Support multiple interfaces per file.

2005-12-12  Robert Shearman <rob@codeweavers.com>

	* tools/widl/header.c, tools/widl/parser.y, tools/widl/typegen.c:
	widl: Don't treat FC_SMALL as FC_SHORT.
	FC_SMALL is its own type and is the same size as FC_CHAR, not
	FC_SHORT.

	* tools/widl/header.c:
	widl: Use WCHAR instead of wchar_t.
	Output IDL wchar_t types as WCHAR to avoid conflicts with the
	generally incompatible Unix wchar_t.

2005-12-12  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: Added documentation for OpenPrinter.

2005-12-12  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/commdlg/finddlg32.c, dlls/ole32/ole16.c, dlls/user/cursoricon.c:
	Const correctness fixes.

2005-12-12  Marcus Meissner <marcus@jet.franken.de>

	* include/ws2tcpip.h:
	winsock: getaddrinfo return codes
	Adjust return code EAI_NODATA to WSAHOST_NOT_FOUND, like windows does
	it.

	* dlls/winsock/socket.c:
	winsock: getaddrinfo - return code mapping.
	convert_eai_u2w should map from unix to windows, not the other way
	round (spotted by Dominic Wise).

2005-12-12  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/urlmon.idl:
	urlmon.idl: Add some BINDSTATUS values.

2005-12-12  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/comctl32/treeview.c:
	comctl32: Fixed (harmless) typo.

	* dlls/commdlg/fontdlg.c, dlls/winaspi/aspi.c:
	Removed some dead-code.

	* dlls/ddraw/tests/ddrawmodes.c, dlls/setupapi/queue.c:
	Made some functions static.

	* dlls/iccvid/iccvid.c, dlls/msvidc32/msvideo1.c:
	vidc: Return error codes when a message isn't supported.

2005-12-12  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/safearray.c, dlls/oleaut32/tests/safearray.c:
	OLE: Fix SafeArrayCopy for NULL pvData.
	It is allowed to copy a SAFEARRAY with a NULL pvData, as long as
	cbElements is non-zero. Add a test for this and fix the safe array
	code.

	* dlls/ole32/errorinfo.c:
	CreateErrorInfo trace fix.
	CreateErrorInfo isn't a stub so don't print this in the trace
	message.

	* dlls/oleaut32/typelib.c:
	OLE: Add const to several typelib functions.
	Add const attributes to parameters for several functions and fix up
	some formatting.

	* dlls/oleaut32/oleaut.c:
	OleTranslateColor trace fix.
	OleTranslateColor isn't a stub so don't print ":stub" in the trace
	message.

2005-12-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmldoc.c, dlls/mshtml/htmldoc3.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Added IHTMLDocument3 stub implementation.

2005-12-12  Stefan Leichter <Stefan.Leichter@camLine.com>

	* programs/winetest/Makefile.in:
	winetest: Add d3d9 tests.

2005-12-12  Robert Shearman <rob@codeweavers.com>

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c:
	widl: Don't output __RPC_FAR in generated code.

2005-12-12  Paul Vriens <Paul.Vriens@xs4all.nl>

	* programs/winecfg/Nl.rc:
	winecfg: Update Dutch resources for the Audio tab.

2005-12-12  Jacek Caban <jacek@codeweavers.com>

	* include/mshtmdid.h, include/mshtml.idl:
	Added declaration of IHTMLDocument3 and more DISPIDs.

2005-12-12  Filip Navara <xnavara@volny.cz>

	* dlls/kernel/module.c:
	kernel: Fix the Mach-O binary magic.

2005-12-12  Markus Amsler <markus.amsler@oribi.org>

	* dlls/winedos/dosmem.c:
	winedos: Implement MCB.

2005-12-12  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/urlmon/umstream.c:
	urlmon: Correctly fix IStream::Read.
	Don't dereference a possible NULL pointer.

2005-12-09  H. Verbeet <hverbeet@gmail.com>

	* configure, configure.ac, dlls/d3d9/Makefile.in,
	  dlls/d3d9/tests/.gitignore, dlls/d3d9/tests/Makefile.in,
	  dlls/d3d9/tests/stateblock.c:
	d3d9: Add a test for BeginStateBlock and EndStateBlock.

2005-12-09  Markus Amsler <markus.amsler@oribi.org>

	* include/mmsystem.h:
	Remove unneeded ; from DECL_WINELIB_TYPE_AW in mmsystem.h.

2005-12-09  Kai Blin <blin@gmx.net>

	* dlls/secur32/ntlm.c:
	secur32: Fix conversion of password in NTLM AcquireCredentialsHandleA.

2005-12-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/change.c, dlls/ntdll/reg.c, include/wine/server_protocol.h,
	  server/change.c, server/protocol.def, server/registry.c,
	  server/trace.c:
	server: Added object attributes to a few more requests.

	* server/atom.c, server/console.c, server/debugger.c, server/directory.c,
	  server/event.c, server/file.c, server/handle.c, server/handle.h,
	  server/mailslot.c, server/mapping.c, server/mutex.c,
	  server/named_pipe.c, server/process.c, server/semaphore.c,
	  server/snapshot.c, server/sock.c, server/symlink.c, server/thread.c,
	  server/timer.c, server/token.c, server/winstation.c:
	server: Make alloc_handle use attributes instead of inherit flag.

	* dlls/kernel/console.c, dlls/ntdll/server.c, dlls/ntdll/thread.c,
	  dlls/x11drv/x11drv_main.c, include/wine/server.h,
	  programs/wineconsole/curses.c:
	Make wine_server_fd_to_handle use attributes instead of inherit flag.

	* programs/wineconsole/wineconsole.c:
	wineconsole: Remove some unnecessary typecasts.

	* dlls/ntdll/om.c, include/wine/server_protocol.h, server/handle.c,
	  server/protocol.def, server/trace.c:
	server: Use attributes instead of inherit flag in dup_handle request.

	* dlls/ntdll/nt.c, include/wine/server_protocol.h, server/protocol.def,
	  server/token.c, server/trace.c:
	server: Use attributes instead of inherit flag in token requests.
	Also use the specified access rights in the open_token request.

	* dlls/kernel/process.c, dlls/ntdll/process.c, dlls/ntdll/thread.c,
	  include/wine/server_protocol.h, server/process.c,
	  server/protocol.def, server/thread.c, server/trace.c:
	server: Use attributes instead of inherit flag in process and thread requests.

	* dlls/kernel/toolhelp.c, dlls/ntdll/nt.c, include/wine/server_protocol.h,
	  server/protocol.def, server/snapshot.c, server/trace.c:
	server: Use attributes instead of inherit flag in snapshot requests.

	* dlls/kernel/console.c, include/wine/server_protocol.h,
	  programs/wineconsole/wineconsole.c, server/console.c,
	  server/protocol.def, server/trace.c:
	server: Use attributes instead of inherit flag in console requests.

	* dlls/ntdll/file.c, dlls/ntdll/server.c, include/wine/server_protocol.h,
	  server/file.c, server/protocol.def, server/trace.c:
	server: Use attributes instead of inherit flag in file requests.

	* dlls/winsock/socket.c, include/wine/server_protocol.h,
	  server/protocol.def, server/sock.c, server/trace.c:
	server: Use attributes instead of inherit flag in socket requests.

2005-12-09  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/mpr/mpr_main.c, dlls/shlwapi/regstream.c, dlls/user/mouse16.c:
	Add some missing includes which contain used prototypes.

2005-12-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl,
	  dlls/mshtml/nsservice.c:
	mshtml: Added PromptService implementation.

	* dlls/mshtml/nsembed.c:
	mshtml: Added nsIURIContentListener to QueryInterface.
	Always release nsIWebBrowserSetup.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl:
	mshtml: Added nsIEmbeddingSiteWindow implementation.

2005-12-09  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/d3d9/vertexshader.c, dlls/wined3d/device.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Vertex shader 8 support.
	Start to add support for DirectX 8 vertex shaders, constants and
	registers are now correctly assigned and loaded allowing support for
	most basic d3d8 shaders.

2005-12-09  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/urlmon/umstream.c:
	urlmon: Fix call to ReadFile.
	The BytesRead parameter passed to ReadFile may never be NULL.

2005-12-09  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/win16.api, tools/winapi/win32.api:
	Update win16.api and win32.api.

	* tools/sfnt2fnt.c:
	sfnt2fnt: Don't print two newlines after error messages.

	* tools/widl/header.c:
	widl: Issue correct C++ headers.

2005-12-09  Thomas Weidenmueller <w3seek@reactos.com>

	* dlls/quartz/filesource.c, dlls/quartz/filtermapper.c:
	quartz: Fix incorrect usages of the HRESULT_FROM_WIN32 macro.

2005-12-09  Alexander N. Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Updated Norwegian Bokmaal resources.

2005-12-08  Alexandre Julliard <julliard@winehq.org>

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

----------------------------------------------------------------
2005-12-08  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/dib.c:
	gdi: Fix 24bpp -> 32bpp copy.

2005-12-08  Rein Klazes <wijn@wanadoo.nl>

	* dlls/advapi32/registry.c, dlls/advapi32/tests/registry.c:
	advapi32: RegCreateKeyEx fix.
	On Win9x,ME RegCreateKeyEx ignores the backslash character if the
	subkey begins with one. With a regression test.

2005-12-08  Robert Shearman <rob@codeweavers.com>

	* tools/widl/parser.y:
	widl: Formatting cleanups.

2005-12-08  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Marshal and unmarshal basic types.

2005-12-08  Robert Shearman <rob@codeweavers.com>

	* tools/widl/Makefile.in, tools/widl/client.c, tools/widl/server.c,
	  tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Add a type generator framework.
	Add a framework for writing the strings for marshaling and
	unmarshaling parameters and make the client and server use it.

2005-12-08  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/client.c, tools/widl/server.c:
	widl: Write out argument lists in the server.
	- Add framework for updating proc offsets.
	- Write out argument lists in the server.

2005-12-08  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/client.c, tools/widl/server.c:
	widl: Rename some variables.

2005-12-08  Henning Gerhardt <henning.gerhardt@web.de>

	* programs/winecfg/De.rc:
	winecfg: Update German resource.

2005-12-08  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/opengl32/wgl.c, dlls/opengl32/wgl_ext.c:
	opengl: render_texture
	- better render_texture emulation (using pbuffers)
	- support GLX_ATI_render_texture for render_texture

2005-12-08  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Handle HTTP_QUERY_CUSTOM.
	In HttpQueryInfo if dwInfoLevel includes HTTP_QUERY_CUSTOM then
	lpBuffer is In/Out because the header we are querying is there.
	Additionally standard headers can be queried in this manner as well
	(such as Set-Cookie).

2005-12-08  Robert Reif <reif@earthlink.net>

	* dlls/winmm/wineoss/audio.c, dlls/winmm/wineoss/midi.c,
	  dlls/winmm/wineoss/mixer.c, dlls/winmm/wineoss/mmaux.c,
	  dlls/winmm/wineoss/oss.c, dlls/winmm/wineoss/oss.h:
	wineoss: Fix device probing.
	- Fix device probing at driver load time.
	- Fix memory leaks at driver exit time.

2005-12-08  Raphael Junqueira <fenix@club-internet.fr>

	* include/Makefile.in, include/dpaddr.h, include/dplay8.h,
	  include/dplobby8.h:
	dplay: dx8/dx9 support (missing includes).
	- add directx9 support for dplay8.h and dpaddr.h
	- new file dplobby8.h

2005-12-08  Robert Shearman <rob@codeweavers.com>

	* dlls/commdlg/printdlg.c:
	comdlg32: Don't worry if an HGLOBAL passed to printdlg is already locked.

2005-12-08  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/winealsa/audio.c:
	winealsa: Fixed returned string in capabilities.

2005-12-08  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/winenas/audio.c:
	winenas: fix crash.
	- return correct MM error code when no connection to server has been
	opened
	- don't close the AU driver if it hasn't been opened

2005-12-08  H. Verbeet <hverbeet@gmail.com>

	* include/d3d8.h, include/d3d9.h:
	d3d8/d3d9: Define D3D_SDK_VERSION.

2005-12-08  Robert Shearman <rob@codeweavers.com>

	* programs/notepad/dialog.c, programs/notepad/main.c,
	  programs/notepad/main.h:
	notepad: Remember options selected in the print setup dialog.

2005-12-08  Mike McCormack <mike@codeweavers.com>

	* programs/winecfg/audio.c:
	winecfg: Fix compilation on gcc 2.95 (no nameless unions).

2005-12-08  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: A->W bugfix.
	When converting SendRequestExA -> W we need to set the lpcszHeader
	parameter to NULL if the original one is NULL.

2005-12-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/reg.c, include/winternl.h:
	ntdll: Check for failure to get the user path in RtlOpenCurrentUser.
	Fixed the return value type.

2005-12-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsembed.c:
	mshtml: Added config key to specify Gecko path.

2005-12-07  Robert Reif <reif@earthlink.net>

	* programs/winecfg/audio.c:
	winecfg: Added support for auto detecting all drivers by attempting to
	open them.

2005-12-07  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/dpnhpast/main.c, dlls/mapi32/imalloc.c, dlls/msisys/msisys.c,
	  dlls/netapi32/browsr.c, dlls/rsaenh/rsaenh.c,
	  dlls/wintrust/wintrust_main.c:
	Add a few missing #includes.

2005-12-07  Kai Blin <blin@gmx.net>

	* dlls/secur32/ntlm.c:
	secur32: Implement InitializeSecurityContext(A|W) for the NTLM
	security provider.

2005-12-07  Robert Reif <reif@earthlink.net>

	* programs/winecfg/En.rc, programs/winecfg/audio.c,
	  programs/winecfg/resource.h:
	winecfg: Show all sound card drivers and their devices.

2005-12-07  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/fnt2fon.c, tools/sfnt2fnt.c:
	Add an error() function to fnt2fon and sfnt2fnt.

2005-12-06  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	OLE: Implement undocumented behaviour in DispCallFunc.
	Fix DispCallFunc to work with MSDN-undocumented behaviour used by
	Office 2003 and document the function.

2005-12-06  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	OLE: Implement ITypeInfo_AddressOfMember.

2005-12-06  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tmarshal.c, dlls/oleaut32/typelib.c,
	  dlls/oleaut32/typelib.h:
	OLE: Fix brokenness in typelib marshaller caused by dispinterface retval fix.
	Fix more fallout from dispinterface retval patch: make typelib
	marshaler use the internal function description so that it calls
	dispinterface functions with the correct number of parameters again.
	Also fixes some memory leaks caused by the fact that a corresponding
	ReleaseXDesc function has to be called for each GetXDesc.

2005-12-06  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/typelib.c:
	OLE: Add tests for the typelib version of ITypeComp_Bind.

2005-12-06  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c, include/oleauto.h:
	OLE: Update the type of the oVft parameter for DispCallFunc.

2005-12-06  Kai Blin <blin@gmx.net>

	* dlls/secur32/Makefile.in, dlls/secur32/ntlm.c:
	secur32: Implementing AcquireCredentialsHandle(A|W) for the NTLM
	security provider.

2005-12-06  Detlef Riekenberg <wine.dev@web.de>

	* tools/c2man.pl:
	c2man: Remove HTML warnings.

2005-12-06  Robert Reif <reif@earthlink.net>

	* dlls/winmm/winejack/audio.c, dlls/winmm/winejack/jack.c:
	winejack: Fix driver load and initialization.
	Move wave in/out initialization from wave out to driver.
	Add index number to device names.
	Fix memset bug where only first wave in caps was zeroed.

2005-12-06  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/mciwave/mciwave.c:
	mciwave: save/record.
	- fix for playback after a sound has been recorded
	- shall fix also opening the mci device without name
	- bug reported (and fix tested) by Peter Astrand

2005-12-06  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/stack.c:
	dbghelp: Final touch on StackWalk64 so that it works.

2005-12-06  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: Document the monitor functions.

2005-12-06  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/win16.api, tools/winapi/win32.api:
	Sort entries in win16.api and win32.api

2005-12-06  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/x11drv/opengl.c:
	x11drv: Add more useful traces on SetPixelFormat (and no more FIXME).

2005-12-06  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/x11drv/init.c, dlls/x11drv/x11drv.h:
	x11drv: cleanup not longer used data on X11DRV_PDEVICE.

2005-12-06  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/gdi/font.c, dlls/gdi/gdi32.spec:
	gdi: Added stub for AddFontMemResourceEx.

2005-12-06  Alexandre Julliard <julliard@winehq.org>

	* include/mlang.idl:
	mlang: Properly declare the interface uuids.

2005-12-06  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/mlang/mlang.c, dlls/mlang/tests/mlang.c, include/mlang.idl:
	mlang: Implement IEnumRfc1766 interface.

2005-12-06  Robert Reif <reif@earthlink.net>

	* dlls/winmm/winejack/jack.c:
	winmm: Allow sound card driver to be opened more than once.
	TRACE cleanups.

2005-12-06  Robert Reif <reif@earthlink.net>

	* dlls/winmm/winealsa/alsa.c, dlls/winmm/winearts/arts.c,
	  dlls/winmm/wineaudioio/audioio.c, dlls/winmm/wineesd/esound.c,
	  dlls/winmm/winenas/nas.c, dlls/winmm/wineoss/oss.c:
	winmm: Allow sound card drivers to be opened more than once.

2005-12-06  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/win32.api:
	Update win32.api to current git.

2005-12-06  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/rpc.c:
	OLE: Fix a typo where brackets were missing.

2005-12-06  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	OLE: ITypeInfo_Invoke parameter naming change.
	Rename the dwFlags parameter of ITypeInfo_Invoke since it is not a
	DWORD, but an unsigned short.

2005-12-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Added get_Document implementation.

2005-12-06  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/expr.c:
	winedbg: Fixed broken code about type management for binary operator.

2005-12-06  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: Add documentation for the port functions.

2005-12-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/tests/thread.c:
	kernel: Added a basic test for exception handling in threads.

2005-12-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/cursoricon.c:
	user: Fixed copy/paste bug in CURSORICON_GetResIconEntry.

2005-12-05  Rein Klazes <wijn@wanadoo.nl>

	* dlls/ddraw/Makefile.in, dlls/ddraw/main.c:
	ddraw: Catch access violations when calling DirectDrawEnumerateProc.

2005-12-05  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/devenum/createdevenum.c:
	devenum: Don't leak key handle creating a category registry key.

2005-12-05  Christian Gmeiner <christian.gmeiner@students.fh-vorarlberg.ac.at>

	* dlls/msi/msi.c:
	msi: Implemented DllCanUnloadNow.

2005-12-05  Wojciech Migda <migda@chemia.uj.edu.pl>

	* dlls/imagehlp/imagehlp.spec:
	imagehlp: fixed typo in SymSetOptions entry.

2005-12-05  Huw Davies <huw@codeweavers.com>

	* dlls/msi/msi.spec:
	msi: Fix MsiProvideQualifiedComponentW spec file entry.

2005-12-05  Vitaliy Margolen <wine-patch@kievinfo.com>

	* server/main.c, server/object.h:
	server: Remove sync_namespace.

2005-12-05  Alexandre Julliard <julliard@winehq.org>

	* server/directory.c, server/mailslot.c, server/named_pipe.c,
	  server/object.h:
	server: Let the directory code handle device names.

2005-12-05  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/file.c, include/wine/server_protocol.h, server/directory.c,
	  server/mailslot.c, server/object.h, server/protocol.def,
	  server/trace.c:
	Move mailslot devices into directory name space.

2005-12-05  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/sync.c, dlls/kernel/tests/pipe.c, dlls/ntdll/file.c,
	  dlls/ntdll/tests/om.c, include/wine/server_protocol.h,
	  server/directory.c, server/named_pipe.c, server/object.h,
	  server/protocol.def, server/trace.c:
	Move named pipe objects into directory name space.
	Change tests accordingly.
	Add small test for WaitNamedPipe.

2005-12-05  Alexandre Julliard <julliard@winehq.org>

	* server/directory.c, server/event.c, server/mapping.c, server/mutex.c,
	  server/object.h, server/semaphore.c, server/symlink.c,
	  server/timer.c:
	server: Move handle allocation out of open_object_dir.

2005-12-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/stack.c, include/dbghelp.h:
	dbghelp: Implemented StackWalk64.

2005-12-05  Francois Gouget <fgouget@free.fr>

	* dlls/msvidc32/msvideo1.c:
	msvidc32: Add a comment for DllMain() to stop winapi_check from
	complaining about it.

2005-12-05  Francois Gouget <fgouget@free.fr>

	* tools/winapi/win32.api:
	Update win32.api to match the current sources.

2005-12-05  Pavel Roskin <proski@gnu.org>

	* programs/notepad/Ru.rc:
	notepad: Russian translation for "Font..." menu item.

2005-12-05  Cihan Altinay <cihan@uq.edu.au>

	* dlls/riched20/editor.c:
	riched20: register ListBox & ComboBox classes
	Partially implement REExtendedRegisterClass() to register missing
	window classes so that applications relying on them don't get
	confused.

2005-12-05  YunSong Hwang <hys545@dreamwiz.com>

	* programs/winefile/Ko.rc:
	winefile: Fix an incorrect translation.

2005-12-05  Alexander N. Sørnes <alex@thehandofagony.com>

	* dlls/commdlg/cdlg_No.rc, dlls/iccvid/iccvid_No.rc, dlls/iccvid/rsrc.rc,
	  dlls/msvidc32/msvidc32_No.rc, dlls/msvidc32/rsrc.rc,
	  dlls/msvideo/msvfw32_No.rc, dlls/msvideo/rsrc.rc,
	  programs/notepad/No.rc, programs/regedit/No.rc,
	  programs/winecfg/No.rc:
	Update Norwegian Bokmaal resources.

2005-12-05  Patrick Ammann <pammann@aro.ch>

	* dlls/wininet/netconnection.c:
	wininet: compilation fix
	- make netconnection.c compile when HAVE_OPENSSL_SSL_H or
	HAVE_OPENSSL_ERR_H are not defined.

2005-12-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/driver.c, dlls/winmm/winemm.h:
	winmm: driver unloading.
	- properly handle drivers unloading when no session instance of the
	driver has been created

2005-12-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/symbol.c, dlls/dbghelp/type.c, programs/winedbg/expr.c,
	  programs/winedbg/symbol.c:
	dbghelp,winedbg: SYMBOL_INFO fix.
	- native dbghelp returns in SYMBOL_INFO.TypeIndex the index of the
	type of the symbol (we were returning the symbol index instead)
	- fixed winedbg accordingly

2005-12-05  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/oleaut32/tests/vartype.c, dlls/oleaut32/vartype.c:
	Fix VarBstrCmp for NULL input BSTRs (MSDN is wrong).

2005-12-05  Milko Krachounov <milko@3mhz.net>

	* dlls/commdlg/cdlg_Bg.rc, programs/regedit/Bg.rc:
	Update the Bulgarian resources for commdlg and regedit.

2005-12-05  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winsock/socket.c:
	winsock: Rewrote mappers to use sizeof() based loops.
	Added IPPROTO_IP and AF_UNSPEC to the mappers.

2005-12-03  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	OLE: Support HREFTYPEs For ITypeInfos
	Add support for reading the hreftype of a typeinfo, return it to the
	application in ITypeComp_Bind for the DESKIND_APPOBJECT case and
	support referencing it in ITypeInfo_GetRefTypeInfo.

2005-12-03  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	OLE: fix function name loading
	Correctly get the name of the second function of a propget/propput
	pair in MSFT typelibs when the name offset is set to -1.

2005-12-03  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	OLE: fix invoking dispinterface functions
	Fix invoking dispinterface functions by using the internal
	representation of the function, not the one returned to applications.

2005-12-03  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/pixelshader.c:
	wined3d: Set pixel shader version correctly in IWineD3DPixelShaderImpl_SetFunction.

2005-12-03  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Return the correct parent in IWineD3DPixelShaderImpl_GetParent.
	Remove an unnecessary cast.

2005-12-03  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	OLE: Move the dispinterface return value handling to functions that
	return the FUNCDESC to the user.

2005-12-03  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/netconnection.c:
	wininet: Correctly set the last error when a called Unix network
	function fails.

2005-12-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/symbol.c:
	winedbg: simplify some code.

2005-12-03  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: return D3DERR_INVALIDCALL when calling BeginStateBlock and
	already recording.

2005-12-03  Pavel Roskin <proski at gnu.org>

	* programs/wineconsole/wineconsole.c:
	Fixed regression in wineconsole creation (curses backend).

2005-12-03  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/winapi_check:
	winapi_check: fully descend in included files to check for prototype.

2005-12-03  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	OLE: fix handling of INVOKE_PROPERTYGET flag in ITypeComp_fnBind.
	The INVOKE_PROPERTYGET flag shouldn't affect binding to variables; it
	should just affect which of a pair of [propget] and [propput]
	functions should be returned.

2005-12-03  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/internet.h:
	wininet: global function/data cleanup
	Make some functions and a structure static since they are only used in
	one file.

2005-12-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/stack.c:
	winedbg: fixed regression (and simplified code!) for arguments
	printing in backtrace.

2005-12-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/symbol.c:
	winedbg: fixed regression in 'info local' command.

2005-12-03  Aric Stewart <aric@codeweavers.com>

	* programs/wcmd/builtins.c:
	wcmd: mkdir recursive create
	In at least both win2k and winxp mkdir from the command prompt can
	recursively create full directory paths. This implements that
	functionality.

2005-12-03  Aric Cyr <aric.cyr@gmail.com>

	* dlls/opengl32/wgl.c, dlls/opengl32/wgl.h, dlls/opengl32/wgl_ext.c,
	  include/wingdi.h:
	Move standard WGL function declarations to wingdi.h.
	dlls/opengl32/wgl.h is now empty and no longer needed.

2005-12-02  Francois Gouget <fgouget@free.fr>

	* dlls/ole32/usrmarshal.c, dlls/wined3d/surface.c, dlls/winspool/info.c,
	  tools/winapi/msvcmaker, tools/winapi/winapi_check_options.pm,
	  tools/winapi/winapi_extract, tools/winebuild/utils.c:
	Assorted spelling fixes.

2005-12-02  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/virtual.c, dlls/ntdll/virtual.c,
	  include/wine/server_protocol.h, server/mapping.c,
	  server/protocol.def, server/trace.c:
	Move mapping (section) objects into directory name space.

2005-12-02  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/sync.c, dlls/ntdll/sync.c, include/wine/server_protocol.h,
	  server/protocol.def, server/timer.c, server/trace.c:
	Move timer objects into directory name space.

2005-12-02  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/sync.c, dlls/ntdll/sync.c, include/wine/server_protocol.h,
	  server/protocol.def, server/semaphore.c, server/trace.c:
	Move semaphore objects into directory name space.

2005-12-02  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/kernel_private.h, dlls/kernel/sync.c, dlls/ntdll/sync.c,
	  dlls/ntdll/tests/om.c, include/wine/server_protocol.h,
	  server/console.c, server/event.c, server/mutex.c,
	  server/named_pipe.c, server/object.h, server/process.c,
	  server/protocol.def, server/trace.c:
	Move event and mutex objects into directory name space.

2005-12-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/dochost.c:
	Sync the WebBrowser's window size with document's window.

2005-12-02  Francois Gouget <fgouget@free.fr>

	* tools/winapi/win32.api:
	Update win32.api to match the current sources.

2005-12-02  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* include/objbase.h, tools/widl/header.c:
	Use the typedef'd declaration of IRpcStubBuffer and IRpcChannelBuffer
	in RPC _Stubs.
	Add IRpcStubBuffer and IRpcChannelBuffer declarations to objbase.h.

2005-12-02  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/widl/header.c:
	Reorder the virtual table definition so it's defined before it is used
	in widl header output.

2005-12-02  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/widl/header.c:
	Use interface instead of struct where appropriate in widl.

2005-12-02  Francois Gouget <fgouget@free.fr>

	* dlls/atl/atl_main.c, dlls/atl/atliface.idl:
	Fix the AtlAxWinInit() prototype.
	Also make it return FALSE to indicate failure instead of E_FAIL.
	Define AtlAxWinInit() and AtlAxCreateControl() in atliface.idl.

2005-12-02  Francois Gouget <fgouget@free.fr>

	* dlls/netapi32/ds.c, tools/winapi/win32.api:
	Better stick to the PSDK types and to the dsrole.h prototype.
	Update win32.api.

2005-12-02  Francois Gouget <fgouget@free.fr>

	* tools/winapi/winapi_parser.pm:
	Fix __RPC_USER handling.

2005-12-02  Francois Gouget <fgouget@free.fr>

	* dlls/wldap32/parse.c, include/winldap.h, tools/winapi/win32.api:
	Better stick to the PSDK types.
	Update win32.api.

2005-12-02  Francois Gouget <fgouget@free.fr>

	* dlls/dbghelp/module.c, include/dbghelp.h:
	Add IMAGEHLP_MODULEW64.
	Add SymGetModuleInfoW64() and SymLoadModule64().

2005-12-02  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shlview.c:
	Implemented scrolling during drag&drop for the shellview class.

2005-12-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/dochost.c:
	Use sink in navigate_complete instead of ClientSite's IDispatch.

2005-12-02  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/cert.c,
	  dlls/crypt32/crypt32.spec, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/encode.c, dlls/crypt32/main.c, dlls/crypt32/oid.c,
	  dlls/crypt32/tests/.gitignore, dlls/crypt32/tests/Makefile.in,
	  dlls/crypt32/tests/encode.c, dlls/crypt32/tests/oid.c:
	Implement more OID support functions.
	Use the exported OID support functions internally.
	Move OID support functions and stubs to a separate file.

2005-12-02  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/c_parser.pm, tools/winapi/winapi_parser.pm:
	Make winapi_check understand the interface keyword.

2005-12-02  Pavel Roskin <proski@gnu.org>

	* dlls/commdlg/cdlg_Bg.rc, dlls/commdlg/cdlg_Ca.rc,
	  dlls/commdlg/cdlg_Cn.rc, dlls/commdlg/cdlg_Cs.rc,
	  dlls/commdlg/cdlg_Da.rc, dlls/commdlg/cdlg_De.rc,
	  dlls/commdlg/cdlg_En.rc, dlls/commdlg/cdlg_Es.rc,
	  dlls/commdlg/cdlg_Fi.rc, dlls/commdlg/cdlg_Fr.rc,
	  dlls/commdlg/cdlg_Hu.rc, dlls/commdlg/cdlg_It.rc,
	  dlls/commdlg/cdlg_Ja.rc, dlls/commdlg/cdlg_Nl.rc,
	  dlls/commdlg/cdlg_No.rc, dlls/commdlg/cdlg_Pl.rc,
	  dlls/commdlg/cdlg_Pt.rc, dlls/commdlg/cdlg_Ru.rc,
	  dlls/commdlg/cdlg_Si.rc, dlls/commdlg/cdlg_Sk.rc,
	  dlls/commdlg/cdlg_Sv.rc, dlls/commdlg/cdlg_Uk.rc,
	  dlls/commdlg/cdlg_Wa.rc, dlls/commdlg/cdlg_Zh.rc:
	Improve script selection combobox in the font selection dialog - set
	height to 90 (the old value of 10 could only fit a single line) and
	remove CBS_OWNERDRAWFIXED flag to trim excessive height from the list
	items.

2005-12-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/events.c, dlls/shdocvw/shdocvw.h:
	Added implementation of IConnectionPoint::Advise and Unadvise.

2005-12-02  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/add.c, dlls/wldap32/bind.c, dlls/wldap32/compare.c,
	  dlls/wldap32/control.c, dlls/wldap32/delete.c, dlls/wldap32/dn.c,
	  dlls/wldap32/error.c:
	Document DN and error handling functions.
	Try to stick to Wine's documentation format.

2005-12-02  Rein Klazes <wijn@wanadoo.nl>

	* programs/wcmd/batch.c, programs/wcmd/builtins.c,
	  programs/wcmd/wcmdmain.c:
	Avoid formatted output in a few more places where formatting is not
	really needed and output could be large enough to be truncated.

2005-12-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c:
	Sync window sizes.

2005-12-02  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/tests/shlfolder.c:
	Added a test for native PIDL format.

2005-12-02  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c:
	Document many of the advpack functions.

2005-12-02  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/x11drv/opengl.c:
	Handle DONTCARE flags on ChoosePixelFormat.
	DOUBLEBUFFER and STEREO are non-mandatory options (ie if not available
	find a compatible pixel format without). So try without if we cannot
	find a valid fbconfig with these options.

2005-12-01  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/Makefile.in, dlls/wldap32/parse.c,
	  dlls/wldap32/wldap32.spec:
	Implement ldap_parse_extended_result{A,W}, ldap_parse_reference{A,W},
	ldap_parse_result{A,W}, ldap_parse_sort_control{A,W} and
	ldap_parse_vlv_control{A,W}.  Stub implementations for
	ldap_parse_page_control{A,W}.

2005-12-01  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/misc.c, dlls/wldap32/search.c,
	  dlls/wldap32/winldap_private.h, dlls/wldap32/wldap32.spec:
	Stub implementations for functions handling paged search results.
	Add some missing declarations.

2005-12-01  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/element.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/node.c,
	  dlls/msxml3/tests/domdoc.c:
	Make the node object aggregatable so that the element object (and in
	future all of the other node types) can use it.

2005-12-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c:
	Check for need to add area to the reserved list also on unmap.

2005-12-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c:
	Ignore the large address space flag when version is win9x.

2005-12-01  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/add.c, dlls/wldap32/delete.c:
	Document the ldap_delete* functions.

2005-12-01  Rein Klazes <wijn@wanadoo.nl>

	* programs/wcmd/builtins.c, programs/wcmd/wcmdmain.c:
	Don't use formatted output in WCMD_setshow_sortenv.
	Don't use unsafe vsprintf in WCMD_output.

2005-12-01  Oldrich Jedlicka <oldium.pro@seznam.cz>

	* dlls/x11drv/dib.c:
	Fix for the monochrome DIB with inverted colors.

2005-12-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/tests/headers.c:
	Improved the CHECK_DEF macro to avoid code duplication.

2005-12-01  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h:
	Make dump functions const.

2005-12-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c:
	Added implementation of OLEIVERB_SHOW in DoVerb.

2005-12-01  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	Remove broken return value handling code and that would reference
	memory beyond the end of the arguments array. Replace it with code
	that properly handles referencing the return type and setting the
	return type to VT_VOID when a dispinterface function doesn't have any
	return value.

2005-12-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/except.c, dlls/msvcrt/msvcrt.h, dlls/msvcrt/tests/headers.c:
	Prefix signal definitions with MSVCRT_ to avoid conflicts with system
	headers.

2005-12-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/cdrom.c, dlls/ntdll/file.c, include/winsock2.h,
	  programs/regedit/treeview.c, server/registry.c:
	Fixed some compiler warnings on Darwin.

2005-12-01  Pavel Roskin <proski@gnu.org>

	* programs/notepad/dialog.c, programs/notepad/main.c:
	Improve font support in Notepad.

2005-12-01  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	Introduce a variable "elemdesc" to eliminate some long common
	expressions.
	Move the contents of the second arguments loop inside the first.
	Move the MSFT_ReadLEDWords so that it is the last statement in the
	loop since it is one of the iterators.

2005-12-01  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	Don't truncate large integer constants.

2005-12-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	Added IOleInPlaceActiveObject stub implementation.

2005-12-01  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec, include/advpub.h:
	Add a stub for AdvInstallFile.

2005-12-01  Robert Shearman <rob@codeweavers.com>

	* configure, configure.ac, dlls/wininet/netconnection.c,
	  include/config.h.in:
	Cleanup SSL connections properly, do a few security checks in
	NETCON_secure_connect and display errors from SSL on failure. Don't
	use SSL_set_bio as SSL_set_fd is cleaner for us.

2005-12-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/listbox.c, dlls/user/tests/listbox.c:
	Add a test for LB_SELITEMRANGE, make it pass under Wine.

2005-12-01  Robert Shearman <rob@codeweavers.com>

	* dlls/stdole2.tlb/std_ole_v2.idl:
	Fix the entry attributes of the two module functions and uncomment
	LoadPicture, but comment out the defaultvalue attribute that causes
	widl to issue a warning.

2005-12-01  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	The pparamdescex of an ELEMDESC should only be copied if wParamFlags &
	PARAMFLAG_DHASDEFAULT.
	Make ITypeInfo_ReleaseVarDesc use TLB_FreeElemDesc.

2005-12-01  Steven Edwards <steven@codeweavers.com>

	* dlls/wldap32/search.c, dlls/wldap32/wldap32.spec:
	Add stubs for ldap_search_init_page[A/W].

2005-12-01  Detlef Riekenberg <wine.dev@web.de>

	* dlls/x11drv/winpos.c:
	Remove unused include X11/IntrinsicP.h.

2005-12-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c:
	Added SetObjectRects implementation.

2005-12-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/client.c:
	Return S_OK in [On|Can]InPlaceActivate.
	Handle IOleDocumentSite in QueryInterface.

2005-12-01  Rein Klazes <wijn@wanadoo.nl>

	* dlls/gdi/freetype.c:
	Make WineEngGetFontData always return the used byte count.

2005-11-30  Peter Lemenkov <petro@mail.ru>

	* include/winuser.h:
	Added WS_EX_COMPOSITED.

2005-11-30  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/painting.c, dlls/user/tests/msg.c:
	Add a test for RedrawWindow with an empty region/rectangle, make it
	pass under Wine.

2005-11-30  Willie Sippel <willie@zeitgeistmedia.net>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	Added more Nvidia card IDs.

2005-11-30  Alexandre Julliard <julliard@winehq.org>

	* tools/winewrapper:
	Added support for Darwin DYLD_LIBRARY_PATH.

2005-11-30  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/om.c, dlls/ntdll/tests/om.c, include/wine/server_protocol.h,
	  server/Makefile.in, server/directory.c, server/object.h,
	  server/protocol.def, server/request.h, server/symlink.c,
	  server/trace.c:
	Implement symbolic link object in wineserver.
	Implement Nt[Create|Open|Query]SymbolicLinkObject.
	Change tests accordingly.

2005-11-30  Markus Gömmel <m.goemmel@compulab.de>

	* dlls/shell32/shellpath.c:
	Added CSIDL_MYVIDEO|MYPICTURES|MYMUSIC to _SHRegisterUserShellFolders.

2005-11-30  Oldrich Jedlicka <oldium.pro@seznam.cz>

	* dlls/x11drv/dib.c:
	Fix for RGB mask that corresponds to the visual's mask.

2005-11-30  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/control.c:
	Document the ldap_control* functions.

2005-11-30  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/shell32/shlexec.c:
	Fix context menu handling for more than one entry in order to repair
	.lnk-file execution: Don't break at the first non-matching entry.

2005-11-30  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/opengl32/wgl.c:
	Added some checks on wglCreatContext to avoid problems (and
	SetLastErrors).

2005-11-30  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec:
	Added stub for CryptVerifyMessageSignature.

2005-11-30  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/tests/msg.c, dlls/x11drv/winpos.c:
	ShowWindows(SW_SHOWMAXIMIZED) should ignore WS_MAXIMIZE window
	state. Change tests accordingly.

2005-11-30  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/tests/msg.c, dlls/user/win.c:
	New maximized visible window should be shown with
	ShowWindow(SW_SHOW).

2005-11-30  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/tests/msg.c, dlls/x11drv/window.c:
	CreateWindow should not activate invisible minimized or maximized
	windows.
	Add several tests to show the correct behavior.

2005-11-30  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/version/tests/install.c:
	Fix version tests on windows 9x/ME.

2005-11-30  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/tests/http.c:
	Test the behaviour of HttpSendRequestEx when putting data into the
	lpvBuffer.

2005-11-30  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	Remove duplicated code by modifying HTTP_HttpSendRequest so that it
	can be used by both HttpSendRequest and HttpSendRequestEx.
	Also allow HttpSendRequestEx to be used asynchronously.

2005-11-30  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/netapi32/netapi32.c, include/lm.h, include/lmaccess.h,
	  include/lmserver.h, include/lmwksta.h:
	Add some prototypes to include/ for already existing functions in
	netapi32.

2005-11-30  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/win16.api, tools/winapi/win32.api,
	  tools/winapi/winapi_function.pm, tools/winapi/winapi_local.pm,
	  tools/winapi/winapi_parser.pm:
	Update win32.api to current cvs.
	Add __RPC_USER as a calling convention in winapi.

2005-11-30  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	Add support for Intel drivers version string.
	Update default driver version (nvidia).

2005-11-30  Robert Shearman <rob@codeweavers.com>

	* dlls/x11drv/xrender.c:
	Disable XRender if bit masks aren't valid.
	XRender code in the X11 driver will go into an infinite loop when the
	colour bit masks are 0, so disable XRender in this case.

2005-11-30  Robert Shearman <rob@codeweavers.com>

	* dlls/msi/registry.c:
	The buffer sizes in the documentation for MsiDecomposeDescriptorW don't
	include the NULL terminator, so fix this.

2005-11-30  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Remove call to StrCatW by passing in NULL for lpszExtraInformation in
	the call to InternetCrackUrl, which concatenates the params onto the
	path.
	Some other minor cleanups.

2005-11-30  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	Factor out code for doing ELEMDESC sizes and copies.
	Copy FUNCDESC structures returned to calling applications instead of
	passing a pointer to the master structure used internally.
	Call VariantInit on newly allocated memory before calling VariantCopy.

2005-11-29  Hans Leidekker <hans@it.vu.nl>

	* configure, configure.ac:
	Link to the reentrant version of libldap.

2005-11-29  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/iccvid/iccvid_Ko.rc, dlls/iccvid/rsrc.rc,
	  dlls/msvidc32/msvidc32_Ko.rc, dlls/msvidc32/rsrc.rc:
	Add Korean translations.

2005-11-29  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/om.c, dlls/ntdll/tests/om.c, include/wine/server_protocol.h,
	  server/Makefile.in, server/directory.c, server/main.c,
	  server/object.c, server/object.h, server/protocol.def,
	  server/request.c, server/request.h, server/trace.c:
	Implement directory object in wineserver.
	Implement Nt[Create|Open]DirectoryObject.
	Change tests accordingly.

2005-11-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	Check for a valid module before attempting to read the export
	directory in LdrGetProcedureAddress.

2005-11-29  Rein Klazes <wijn@wanadoo.nl>

	* dlls/winsock/socket.c, dlls/winsock/tests/sock.c:
	Clear the reference counter in WSACleanup, with regression test.

2005-11-29  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/compare.c:
	Document the ldap_compare* functions.

2005-11-29  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	Added support for vertex and pixel shader constants that have no type
	i.e. they haven't been set yet or are clear.

2005-11-29  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/netapi32/Makefile.in, dlls/netapi32/ds.c,
	  dlls/netapi32/netapi32.spec, dlls/netapi32/tests/.gitignore,
	  dlls/netapi32/tests/Makefile.in, dlls/netapi32/tests/ds.c,
	  include/Makefile.in, include/dsrole.h:
	Added some stubbed Ds-calls
	Start of conformance tests for these Ds-calls.

2005-11-29  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/stack.c, include/dbghelp.h:
	Stub StackWalk64.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c,
	  dlls/dbghelp/path.c, include/dbghelp.h:
	Added support for 'loading' virtual modules.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/symbol.c, include/dbghelp.h:
	Implemented SymGet{Next|Prev}Line64.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/module.c:
	Now correctly checking calling down to 32 bit version.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	HttpSendRequestExA/W doesn't touch lpBuffersIn->Next, so simplify the
	code a bit.
	Modify test case to demonstrate this.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/module.c, include/dbghelp.h:
	Implemented SymGetModuleInfo64.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/Makefile.in, dlls/ole32/ole32.spec,
	  dlls/ole32/tests/Makefile.in, dlls/ole32/tests/marshal.c,
	  dlls/ole32/usrmarshal.c:
	Implement some user marshal functions and add tests.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	More lpszServerName -> lpszHostName fixes.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/module.c, include/dbghelp.h:
	Implemented SymUnloadModule64.

2005-11-29  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/tests/advpack.c:
	Returned versions are always initialized to zero, even on failure.
	Function always returns S_OK, even on failure.
	Copy the file to the temp directory if the file exists but isn't found
	by GetFileVersionInfoSize.
	If bVersion is FALSE, return the language and code page identifiers of
	the file, not the system.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Fix redirects from secure to non-secure and vice versa.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	Implement ITypeInfo_Bind for typelibs.
	Fix some places where a returned object was AddRef'd.
	Make the search through implemented types work on all types, not just
	interfaces.

2005-11-29  Peter Lemenkov <petro@mail.ru>

	* include/shellapi.h:
	Added some definitions.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/mci.c:
	Fixed some bugs in MCI string parsing.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/dbghelp.spec,
	  dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c,
	  include/dbghelp.h:
	Implemented SymLoadModuleEx.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/debugger.h, programs/winedbg/display.c,
	  programs/winedbg/stack.c, programs/winedbg/symbol.c:
	Replaced stack_get_frame with a pure symbol (and no longer stackframe)
	oriented API (stack_get_current_symbol).
	Reused the func name (stack_get_frame) for internal stack.c handling.

2005-11-29  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/ole32/ole32res.rc:
	Made the Drag&Drop cursors' rubber band visible on a white background.

2005-11-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/bitblt.c, dlls/x11drv/graphics.c:
	Avoid including X11/Intrinsic.h.

2005-11-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi/bitmap.c:
	Added support for doing SetBitmapBits on a DIB section.

2005-11-29  James Hawkins <truiken@gmail.com>

	* include/advpub.h:
	Add ADN_DEL_UNC_PATHS define to advpub.h.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Change all SendAsyncCallback calls into the synchronous
	INTERNET_SendCallback where INTERNET_FLAG_ASYNC is already handled
	properly.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* include/objidl.idl:
	Make IAdviseSink methods non-async and remove the IAsyncManager
	parameter hack that native COM used to use (but not any more). Async
	calls are an optimisation that we're not going to support in the near
	future.

2005-11-29  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/opengl32/wgl.c:
	Fixed crash in wglShareList.

2005-11-29  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/dmusic/dmusic.c, dlls/dmusic/dmusic_private.h, dlls/dmusic/port.c:
	Fix implementation of IDirectMusic8Impl_CreatePort.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* include/cvconst.h:
	Added calling convention definitions.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/dbghelp.spec, include/dbghelp.h:
	Added stub for dbghelp.SymRegisterCallback64.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	Add functions for doing a deep copy of a TYPEDESC into a flat buffer.
	Copy VARDESC structures returned to calling applications instead of
	passing a pointer to the master structure used internally.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/cpsf.h, dlls/rpcrt4/cstub.c:
	Add a function to retrieve the MIDL_SERVER_INFO struct from an object.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/cpsf.c:
	The CLSID can be substituted by an IID present in one of the proxy
	file infos in NdrDllGetClassObject.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_midl.c:
	Return the correct error code from NdrProxyErrorHandler.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_ole.c:
	Raise exceptions on failures.
	Replace references of pStubMsg->BufferEnd with RpcMsg->Buffer +
	pStubMsg->BufferLength.
	Fix buffer calculation when no interface data is marshaled to the
	stream.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	Fix the overflow check to not depend on pStubMsg->BufferStart and
	pStubMsg->BufferEnd being valid, because they aren't filled in when
	using MIDL-generated server stubs.
	Don't set the pointer to NULL on unmarshaling because we may want to
	unmarshal the value to an existing pointer instead of allocating a new
	one.

2005-11-29  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/tests/win.c, dlls/user/win.c:
	EnumChildWindows should return result from the callback.

2005-11-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/dochost.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	Activate document object.

2005-11-28  Alexandre Julliard <julliard@winehq.org>

	* include/shlobj.h:
	Remove unnecessary external variable declarations.

2005-11-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/iccvid/iccvid.c, dlls/iccvid/iccvid.spec, dlls/mciavi32/mciavi.c,
	  dlls/mcicda/mcicda.c, dlls/mciseq/mcimidi.c, dlls/midimap/midimap.c,
	  dlls/msacm/imaadp32/imaadp32.c, dlls/msacm/msadp32/msadp32.c,
	  dlls/msacm/msg711/msg711.c, dlls/msacm/pcmconverter.c,
	  dlls/msacm/winemp3/mpegl3.c, dlls/msrle32/msrle32.c,
	  dlls/msvidc32/msvidc32.spec, dlls/msvidc32/msvideo1.c,
	  dlls/winmm/joystick/joystick.c, dlls/winmm/mciwave/mciwave.c,
	  dlls/winmm/wavemap/wavemap.c, dlls/winmm/winealsa/alsa.c,
	  dlls/winmm/winearts/arts.c, dlls/winmm/wineaudioio/audioio.c,
	  dlls/winmm/wineesd/esound.c, dlls/winmm/winejack/jack.c,
	  dlls/winmm/winemm.h, dlls/winmm/winenas/nas.c,
	  dlls/winmm/wineoss/oss.c:
	Fix all drivers DriverProc to conform to the DRIVERPROC definition.

2005-11-28  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec, dlls/crypt32/main.c:
	Fix parameter count on some stubs (thanks to Marcus Meissner for
	spotting that.)  Add a few more stubs.

2005-11-28  Henning Gerhardt <henning.gerhardt@web.de>

	* dlls/iccvid/iccvid_De.rc, dlls/iccvid/rsrc.rc,
	  dlls/msvidc32/msvidc32_De.rc, dlls/msvidc32/rsrc.rc:
	Add German resources.

2005-11-28  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/add.c, dlls/wldap32/bind.c:
	Document the ldap_bind* functions.

2005-11-28  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	Enhanced UnixFolder's IDropTarget implementation.
	Use STATIC_CAST macro more consistently.

2005-11-28  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/spec16.c:
	Preserve 16-byte stack alignment in 16-bit relays.

2005-11-28  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/relay.c:
	Enforce 16-byte stack alignment when returning from 16-bit code and
	when calling a register function.

2005-11-28  Ge van Geldorp <gvg@reactos.org>

	* dlls/advapi32/crypt.c, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/lsa.c, dlls/advapi32/registry.c,
	  dlls/advapi32/security.c, dlls/dbghelp/minidump.c,
	  dlls/dbghelp/path.c, dlls/dbghelp/stack.c,
	  dlls/dplayx/dplayx_messages.c, dlls/imagehlp/integrity.c,
	  dlls/kernel/actctx.c, dlls/kernel/change.c, dlls/kernel/comm.c,
	  dlls/kernel/computername.c, dlls/kernel/debugger.c,
	  dlls/kernel/environ.c, dlls/kernel/except.c, dlls/kernel/file.c,
	  dlls/kernel/format_msg.c, dlls/kernel/global16.c,
	  dlls/kernel/instr.c, dlls/kernel/locale.c, dlls/kernel/module.c,
	  dlls/kernel/oldconfig.c, dlls/kernel/path.c, dlls/kernel/process.c,
	  dlls/kernel/resource.c, dlls/kernel/sync.c, dlls/kernel/thread.c,
	  dlls/kernel/time.c, dlls/kernel/version.c, dlls/kernel/virtual.c,
	  dlls/kernel/volume.c, dlls/mcicda/mcicda.c, dlls/netapi32/wksta.c,
	  dlls/ntdll/atom.c, dlls/ntdll/cdrom.c, dlls/ntdll/critsection.c,
	  dlls/ntdll/debugbuffer.c, dlls/ntdll/debugtools.c,
	  dlls/ntdll/directory.c, dlls/ntdll/env.c, dlls/ntdll/error.c,
	  dlls/ntdll/exception.c, dlls/ntdll/file.c, dlls/ntdll/handletable.c,
	  dlls/ntdll/heap.c, dlls/ntdll/large_int.c, dlls/ntdll/loader.c,
	  dlls/ntdll/nt.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/om.c,
	  dlls/ntdll/path.c, dlls/ntdll/process.c, dlls/ntdll/reg.c,
	  dlls/ntdll/resource.c, dlls/ntdll/rtl.c, dlls/ntdll/rtlstr.c,
	  dlls/ntdll/sec.c, dlls/ntdll/server.c, dlls/ntdll/sync.c,
	  dlls/ntdll/tests/large_int.c, dlls/ntdll/tests/rtlstr.c,
	  dlls/ntdll/thread.c, dlls/ntdll/time.c, dlls/ntdll/version.c,
	  dlls/ntdll/virtual.c, dlls/powrprof/powrprof.c,
	  dlls/psapi/psapi_main.c, dlls/quartz/filesource.c,
	  dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpcss_np_client.c,
	  dlls/user/cursoricon.c, dlls/user/message.c, dlls/user/painting.c,
	  dlls/user/winpos.c, dlls/vmm.vxd/vmm.c, dlls/winedos/int2f.c,
	  dlls/winedos/vxd.c, dlls/wininet/internet.c, dlls/winmm/mmsystem.c,
	  dlls/winsock/socket.c, dlls/x11drv/dce.c, dlls/x11drv/winpos.c,
	  include/ntstatus.h, include/winnt.h, programs/rpcss/np_server.c,
	  programs/wcmd/wcmdmain.c, programs/winedbg/dbg.y,
	  programs/winedbg/debugger.h, programs/winedbg/gdbproxy.c,
	  server/atom.c, server/change.c, server/class.c, server/clipboard.c,
	  server/console.c, server/debugger.c, server/event.c, server/fd.c,
	  server/file.c, server/handle.c, server/hook.c, server/mailslot.c,
	  server/mapping.c, server/mutex.c, server/named_pipe.c,
	  server/object.c, server/process.c, server/ptrace.c, server/queue.c,
	  server/region.c, server/registry.c, server/semaphore.c,
	  server/serial.c, server/snapshot.c, server/sock.c, server/thread.c,
	  server/thread.h, server/timer.c, server/token.c, server/trace.c,
	  server/window.c, server/winstation.c:
	Match PSDK STATUS_* definitions.

2005-11-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/iccvid/iccvid.c, dlls/msrle32/msrle32.c,
	  dlls/msrle32/msrle_private.h, dlls/msvidc32/msvideo1.c,
	  dlls/msvideo/msvideo_main.c, include/vfw.h:
	Set both dwVersionICM and dwVersion to ICVERSION in Wine builtin
	codecs.

2005-11-28  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/http.c:
	Allow HttpEndRequest to process 302 and 301 redirects.  Append Host
	port if non standard on the redirect host header and make sure to
	append the extra information (parameters) and such to the location if
	present.  Additionally check to see if we are redirecting to https and
	if so set the appropriate port.

2005-11-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/dochost.c:
	Added GetOverrideKeyPath and GetOptionKeyPath implementation.

2005-11-28  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shlview.c:
	Use GetUIObjectOf instead of BindToObject to get a IDropTarget object.

2005-11-28  Ge van Geldorp <gvg@reactos.org>

	* dlls/shell32/shlexec.c:
	Other code in shlexec.c (e.g. the extension handling code in
	ShellExecute_GetClassKey) expects sei->lpFile to not be enclosed in
	quotes.

2005-11-28  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	Documentation added for GetPrinterDriverDirectoryW + A.

2005-11-28  Vitaliy Margolen <wine-patch@kievinfo.com>

	* include/ddk/wdm.h:
	Add directory and symlink access rights.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Add support for using secure (SSL/TLS) connections through a proxy
	server.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/internet.h,
	  dlls/wininet/netconnection.c:
	Move the initiation of the SSL connection into a separate function.

2005-11-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/menu.c, dlls/user/tests/menu.c:
	set_menu_item_text handles converting an empty menu item to a
	separator on its own, give it a chance to do its work in the
	MIIM_FTYPE case.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/internet.h:
	Add a host port field that preserves the requested port of the
	destination URL.

2005-11-28  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/usp10/usp10.c, include/usp10.h:
	Added some missing definitions in usp10.h.

2005-11-28  Rein Klazes <wijn@wanadoo.nl>

	* dlls/x11drv/graphics.c:
	Handle an X error in X11DRV_ExtFloodFill().

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Fix "http://" prefix detection on the proxy URL.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_midl.c:
	Make sure to fill out the MIDL_STUB_MESSAGE structure in
	NdrSendReceive like we do in NdrProxySendReceive.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	Implement conformant varying array functions.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	Implement conformant struct functions.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	Implement FC_STRUCTPAD2 for complex types.

2005-11-28  Rein Klazes <wijn@wanadoo.nl>

	* dlls/gdi/gdi32.spec, dlls/gdi/palette.c:
	Add stub implementation for SetMagicColors().

2005-11-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/atl/atl.spec, dlls/atl/atl_main.c, dlls/atl/atlbase.h:
	Added AtlAxCreateControl stub implementation.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Replace some useless checks in HTTP_AddProxyInfo with asserts.

2005-11-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/client.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	Added IOleDocumentSite implementation.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Simplify and fix Set-Cookie handling.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/defaulthandler.c:
	Implement IOleObject_DoVerb function by running the object and then
	delegating to the remote IOleObject_DoVerb function.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	Add functions for marshaling base types (ints, floats, etc.).

2005-11-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/dochost.c, dlls/shdocvw/oleobject.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	Better windows handling.

2005-11-28  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shell32_main.h:
	Modified KeyStateToDropEffect macro to match native shellview's
	behaviour.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Simplify HTTP_InsertProxyAuthorization.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj_private.h, dlls/ole32/defaulthandler.c,
	  dlls/ole32/oleobj.c:
	Delegate advises to the remote object to enable the client to receive
	data change notifications.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/ndr_misc.h:
	Extend conformance computation function to also compute variances.
	MSDN suggests that conformance and variance are pretty much the same,
	but there may be some subtleties to it.

2005-11-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/client.c, dlls/shdocvw/frame.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	Added implementation of GetWindowContext.
	Added stub implementation of IOleInPlaceFrame interface.

2005-11-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/iccvid/.gitignore, dlls/msvidc32/.gitignore:
	Ignore generated rsrc.res.

2005-11-28  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shlview.c:
	Register the shell view itself as the drop target, not it's parent folder.
	Forward drag&drop method calls to the folder currently under the cursor.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.c:
	Change some SendAsyncCallback calls to INTERNET_SendCallback as the
	tests show that the callbacks happen either synchronously or within an
	alternative asynchronous call.
	Remove a check for a NULL lpfnStatusCB that is already performed by
	INTERNET_SendCallback and add a comment about a difference to native.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Add parsing of the Content-ID and Proxy-Connection headers.
	Sort the table of header to option number mappings correctly.
	Change a FIXME to a WARN because there are "X-..." headers that we
	aren't supposed to parse.

2005-11-28  Vitaliy Margolen <wine-patch@kievinfo.com>

	* include/imagehlp.h:
	Add some 64 bit definitions.

2005-11-28  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c:
	Stop reporting not having swapchain 0 as an error and add an internal
	variable instead of modifying a parameter.

2005-11-28  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/vertexdeclaration.c:
	Correct some errors in the way vertex declarations for directx 8 are
	parsed and add offset support.

2005-11-28  Ge van Geldorp <gvg@reactos.org>

	* dlls/shell32/iconcache.c:
	Load shortcut icon by resource id instead of by icon index.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/defaulthandler.c:
	Call DefaultHandler_Stop if we fail to start the server running
	correctly and a few formatting fixes.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	Fix NdrConformantArrayBufferSize to include the size of the
	conformance value.
	Make NdrConformantArrayMemorySize do something more useful, like
	actually return the required memory.
	Conformance offset can be negative and should only be two bytes.

2005-11-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvidc32/Makefile.in, dlls/msvidc32/msvidc32_En.rc,
	  dlls/msvidc32/msvidc32_private.h, dlls/msvidc32/msvideo1.c,
	  dlls/msvidc32/rsrc.rc:
	Add support for ICM_GETINFO in msvidc32 codec (based on msrle32).

2005-11-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/iccvid/Makefile.in, dlls/iccvid/iccvid.c, dlls/iccvid/iccvid_En.rc,
	  dlls/iccvid/iccvid_private.h, dlls/iccvid/rsrc.rc:
	Add support for ICM_GETINFO in iccvid codec (based on msrle32).

2005-11-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msrle32/msrle32.c, dlls/msvideo/msvideo_main.c:
	Fix several bugs in msrle32 preventing it to load.
	Remove a hack in ICOpen compensating a bug in msrle32.
	Use MSVFW32_hModule directly in ICCompressorChoose, and avoid a
	convoluted GWLP_HINSTANCE hack.

2005-11-28  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/winmm/winmm_Ko.rc, programs/wcmd/Ko.rc, programs/winecfg/Ko.rc:
	Update Korean translations.

2005-11-28  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/ole32/ole32res.rc:
	Correct the hot spot position of the drag&drop 'move' and 'link' cursors.

2005-11-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/webbrowser.c:
	Don't crash when parameters of Navigate2 are NULL.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/internet.h:
	Add a new field "lpszHostName" to the session to track the host name
	of the HTTP server, as opposed to the server that we will connect to
	that could be a proxy server. Fixes the "Host:" header that we send to
	servers.

2005-11-28  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/winmm.c:
	LoadLibrary16 is no longer exported by name, so do the lookup by its
	ordinal (when loading NE sibling).

2005-11-28  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/cdrom.c:
	Handle IOCTL_DISK_CHECK_VERIFY which is synonym for
	IOCTL_STORAGE_CHECK_VERIFY.

2005-11-28  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/stack.c, include/dbghelp.h:
	Added stubs for DbgHelp functions: SymRegisterFunctionEntryCallback.

2005-11-28  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	Correct the matrix sizes in software shaders and remove an erroneous
	parameter from lrp.

2005-11-28  Lionel Ulmer <lionel.ulmer@free.fr>

	* dlls/x11drv/settings.c:
	Ignore frequency requests in Desktop mode.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/defaulthandler.c:
	Call the equivalent delegate function for all of the simple
	functions.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	We should always allocate in NdrConformantStringUnmarshal if the
	memory pointer is NULL.

2005-11-28  Lionel Ulmer <lionel.ulmer@free.fr>

	* dlls/dinput/device.c:
	Handle DInput8 interfaces in device QueryInterface.

2005-11-28  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/add.c:
	Document the ldap_add* functions.

2005-11-28  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/bitblt.c:
	If the driver doesn't support StretchBlt try to use StretchDIBits
	instead.

2005-11-28  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/shell32/shfldr_desktop.c, dlls/shell32/shlfolder.c,
	  dlls/shell32/tests/shlfolder.c:
	Correctly call HCR_GetFolderAttributes() in SHELL32_GetItemAttributes().
	Directly return the correct "My Computer" attributes in
	ISF_Desktop_fnGetAttributesOf().
	Remove "todo_wine" from the "My Computer" attributes test case.
	Add test case for retrieving the file system path from the
	CSIDL_PROGRAM_FILES PIDL using SHGetPathFromIDListW().

2005-11-28  YunSong Hwang <hys545@dreamwiz.com>

	* documentation/README.ko:
	Add a translation of the README.

2005-11-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/helpers.c:
	If a source directory doesn't exist, use the install root instead.

2005-11-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	Handle the ^ character in MaskEdit controls.

2005-11-28  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/dmime/dmime_private.h, dlls/dmime/performance.c:
	Partial implementation of IDirectMusicPerformance8Impl_AddPort.

2005-11-28  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	Initial stubbed implementation of UnixFolder's IDropTarget interface.

2005-11-28  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/kernel/process.c:
	Initialize file_exists to 0 at exe load test, prevents mistaking of
	UTF-8 encoded exenames as builtins.

2005-11-26  Alexandre Julliard <julliard@winehq.org>

	* .gitignore, dlls/.gitignore, dlls/winspool/.gitignore, libs/.gitignore,
	  programs/avitools/.gitignore, programs/clock/.gitignore,
	  programs/cmdlgtst/.gitignore, programs/control/.gitignore,
	  programs/eject/.gitignore, programs/expand/.gitignore,
	  programs/explorer/.gitignore, programs/hh/.gitignore,
	  programs/msiexec/.gitignore, programs/notepad/.gitignore,
	  programs/progman/.gitignore, programs/regedit/.gitignore,
	  programs/regsvr32/.gitignore, programs/rpcss/.gitignore,
	  programs/rundll32/.gitignore, programs/start/.gitignore,
	  programs/taskmgr/.gitignore, programs/uninstaller/.gitignore,
	  programs/view/.gitignore, programs/wcmd/.gitignore,
	  programs/wineboot/.gitignore, programs/winebrowser/.gitignore,
	  programs/winecfg/.gitignore, programs/wineconsole/.gitignore,
	  programs/winedbg/.gitignore, programs/winefile/.gitignore,
	  programs/winemenubuilder/.gitignore, programs/winemine/.gitignore,
	  programs/winepath/.gitignore, programs/winetest/.gitignore,
	  programs/winevdm/.gitignore, programs/winhelp/.gitignore,
	  programs/winver/.gitignore, tools/winegcc/.gitignore:
	Ignore symlink files too (needed for git).

2005-11-26  Alexandre Julliard <julliard@winehq.org>

	* .cvsignore, .gitignore, dlls/.cvsignore, dlls/.gitignore,
	  dlls/activeds/.cvsignore, dlls/activeds/.gitignore,
	  dlls/advapi32/.cvsignore, dlls/advapi32/.gitignore,
	  dlls/advapi32/tests/.cvsignore, dlls/advapi32/tests/.gitignore,
	  dlls/advpack/.cvsignore, dlls/advpack/.gitignore,
	  dlls/advpack/tests/.cvsignore, dlls/advpack/tests/.gitignore,
	  dlls/amstream/.cvsignore, dlls/amstream/.gitignore,
	  dlls/atl/.cvsignore, dlls/atl/.gitignore, dlls/avicap32/.cvsignore,
	  dlls/avicap32/.gitignore, dlls/avifil32/.cvsignore,
	  dlls/avifil32/.gitignore, dlls/cabinet/.cvsignore,
	  dlls/cabinet/.gitignore, dlls/capi2032/.cvsignore,
	  dlls/capi2032/.gitignore, dlls/cards/.cvsignore,
	  dlls/cards/.gitignore, dlls/cfgmgr32/.cvsignore,
	  dlls/cfgmgr32/.gitignore, dlls/comcat/.cvsignore,
	  dlls/comcat/.gitignore, dlls/comctl32/.cvsignore,
	  dlls/comctl32/.gitignore, dlls/comctl32/tests/.cvsignore,
	  dlls/comctl32/tests/.gitignore, dlls/commdlg/.cvsignore,
	  dlls/commdlg/.gitignore, dlls/crtdll/.cvsignore,
	  dlls/crtdll/.gitignore, dlls/crypt32/.cvsignore,
	  dlls/crypt32/.gitignore, dlls/crypt32/tests/.cvsignore,
	  dlls/crypt32/tests/.gitignore, dlls/cryptdll/.cvsignore,
	  dlls/cryptdll/.gitignore, dlls/ctl3d/.cvsignore,
	  dlls/ctl3d/.gitignore, dlls/d3d8/.cvsignore, dlls/d3d8/.gitignore,
	  dlls/d3d9/.cvsignore, dlls/d3d9/.gitignore, dlls/d3dim/.cvsignore,
	  dlls/d3dim/.gitignore, dlls/d3drm/.cvsignore, dlls/d3drm/.gitignore,
	  dlls/d3dx8/.cvsignore, dlls/d3dx8/.gitignore, dlls/d3dxof/.cvsignore,
	  dlls/d3dxof/.gitignore, dlls/dbghelp/.cvsignore,
	  dlls/dbghelp/.gitignore, dlls/dciman32/.cvsignore,
	  dlls/dciman32/.gitignore, dlls/ddraw/.cvsignore,
	  dlls/ddraw/.gitignore, dlls/ddraw/tests/.cvsignore,
	  dlls/ddraw/tests/.gitignore, dlls/devenum/.cvsignore,
	  dlls/devenum/.gitignore, dlls/dinput/.cvsignore,
	  dlls/dinput/.gitignore, dlls/dinput/tests/.cvsignore,
	  dlls/dinput/tests/.gitignore, dlls/dinput8/.cvsignore,
	  dlls/dinput8/.gitignore, dlls/dmband/.cvsignore,
	  dlls/dmband/.gitignore, dlls/dmcompos/.cvsignore,
	  dlls/dmcompos/.gitignore, dlls/dmime/.cvsignore,
	  dlls/dmime/.gitignore, dlls/dmloader/.cvsignore,
	  dlls/dmloader/.gitignore, dlls/dmscript/.cvsignore,
	  dlls/dmscript/.gitignore, dlls/dmstyle/.cvsignore,
	  dlls/dmstyle/.gitignore, dlls/dmsynth/.cvsignore,
	  dlls/dmsynth/.gitignore, dlls/dmusic/.cvsignore,
	  dlls/dmusic/.gitignore, dlls/dmusic32/.cvsignore,
	  dlls/dmusic32/.gitignore, dlls/dplay/.cvsignore,
	  dlls/dplay/.gitignore, dlls/dplayx/.cvsignore,
	  dlls/dplayx/.gitignore, dlls/dpnet/.cvsignore, dlls/dpnet/.gitignore,
	  dlls/dpnhpast/.cvsignore, dlls/dpnhpast/.gitignore,
	  dlls/dsound/.cvsignore, dlls/dsound/.gitignore,
	  dlls/dsound/tests/.cvsignore, dlls/dsound/tests/.gitignore,
	  dlls/dswave/.cvsignore, dlls/dswave/.gitignore,
	  dlls/dxdiagn/.cvsignore, dlls/dxdiagn/.gitignore,
	  dlls/dxerr8/.cvsignore, dlls/dxerr8/.gitignore,
	  dlls/dxerr9/.cvsignore, dlls/dxerr9/.gitignore,
	  dlls/dxguid/.cvsignore, dlls/dxguid/.gitignore, dlls/gdi/.cvsignore,
	  dlls/gdi/.gitignore, dlls/gdi/tests/.cvsignore,
	  dlls/gdi/tests/.gitignore, dlls/glu32/.cvsignore,
	  dlls/glu32/.gitignore, dlls/glut32/.cvsignore,
	  dlls/glut32/.gitignore, dlls/hhctrl.ocx/.cvsignore,
	  dlls/hhctrl.ocx/.gitignore, dlls/iccvid/.cvsignore,
	  dlls/iccvid/.gitignore, dlls/icmp/.cvsignore, dlls/icmp/.gitignore,
	  dlls/ifsmgr.vxd/.cvsignore, dlls/ifsmgr.vxd/.gitignore,
	  dlls/imagehlp/.cvsignore, dlls/imagehlp/.gitignore,
	  dlls/imm32/.cvsignore, dlls/imm32/.gitignore,
	  dlls/iphlpapi/.cvsignore, dlls/iphlpapi/.gitignore,
	  dlls/iphlpapi/tests/.cvsignore, dlls/iphlpapi/tests/.gitignore,
	  dlls/itss/.cvsignore, dlls/itss/.gitignore, dlls/kernel/.cvsignore,
	  dlls/kernel/.gitignore, dlls/kernel/messages/.cvsignore,
	  dlls/kernel/messages/.gitignore, dlls/kernel/tests/.cvsignore,
	  dlls/kernel/tests/.gitignore, dlls/lzexpand/.cvsignore,
	  dlls/lzexpand/.gitignore, dlls/lzexpand/tests/.cvsignore,
	  dlls/lzexpand/tests/.gitignore, dlls/mapi32/.cvsignore,
	  dlls/mapi32/.gitignore, dlls/mapi32/tests/.cvsignore,
	  dlls/mapi32/tests/.gitignore, dlls/mciavi32/.cvsignore,
	  dlls/mciavi32/.gitignore, dlls/mcicda/.cvsignore,
	  dlls/mcicda/.gitignore, dlls/mciseq/.cvsignore,
	  dlls/mciseq/.gitignore, dlls/midimap/.cvsignore,
	  dlls/midimap/.gitignore, dlls/mlang/.cvsignore,
	  dlls/mlang/.gitignore, dlls/mlang/tests/.cvsignore,
	  dlls/mlang/tests/.gitignore, dlls/mmdevldr.vxd/.cvsignore,
	  dlls/mmdevldr.vxd/.gitignore, dlls/monodebg.vxd/.cvsignore,
	  dlls/monodebg.vxd/.gitignore, dlls/mpr/.cvsignore,
	  dlls/mpr/.gitignore, dlls/msacm/.cvsignore, dlls/msacm/.gitignore,
	  dlls/msacm/imaadp32/.cvsignore, dlls/msacm/imaadp32/.gitignore,
	  dlls/msacm/msadp32/.cvsignore, dlls/msacm/msadp32/.gitignore,
	  dlls/msacm/msg711/.cvsignore, dlls/msacm/msg711/.gitignore,
	  dlls/msacm/tests/.cvsignore, dlls/msacm/tests/.gitignore,
	  dlls/msacm/winemp3/.cvsignore, dlls/msacm/winemp3/.gitignore,
	  dlls/mscms/.cvsignore, dlls/mscms/.gitignore,
	  dlls/mscms/tests/.cvsignore, dlls/mscms/tests/.gitignore,
	  dlls/msdmo/.cvsignore, dlls/msdmo/.gitignore, dlls/mshtml/.cvsignore,
	  dlls/mshtml/.gitignore, dlls/mshtml/tests/.cvsignore,
	  dlls/mshtml/tests/.gitignore, dlls/msi/.cvsignore,
	  dlls/msi/.gitignore, dlls/msi/tests/.cvsignore,
	  dlls/msi/tests/.gitignore, dlls/msimg32/.cvsignore,
	  dlls/msimg32/.gitignore, dlls/msisys/.cvsignore,
	  dlls/msisys/.gitignore, dlls/msnet32/.cvsignore,
	  dlls/msnet32/.gitignore, dlls/msrle32/.cvsignore,
	  dlls/msrle32/.gitignore, dlls/msvcrt/.cvsignore,
	  dlls/msvcrt/.gitignore, dlls/msvcrt/tests/.cvsignore,
	  dlls/msvcrt/tests/.gitignore, dlls/msvcrt20/.cvsignore,
	  dlls/msvcrt20/.gitignore, dlls/msvcrt40/.cvsignore,
	  dlls/msvcrt40/.gitignore, dlls/msvcrtd/.cvsignore,
	  dlls/msvcrtd/.gitignore, dlls/msvcrtd/tests/.cvsignore,
	  dlls/msvcrtd/tests/.gitignore, dlls/msvidc32/.cvsignore,
	  dlls/msvidc32/.gitignore, dlls/msvideo/.cvsignore,
	  dlls/msvideo/.gitignore, dlls/mswsock/.cvsignore,
	  dlls/mswsock/.gitignore, dlls/msxml3/.cvsignore,
	  dlls/msxml3/.gitignore, dlls/msxml3/tests/.cvsignore,
	  dlls/msxml3/tests/.gitignore, dlls/netapi32/.cvsignore,
	  dlls/netapi32/.gitignore, dlls/netapi32/tests/.cvsignore,
	  dlls/netapi32/tests/.gitignore, dlls/newdev/.cvsignore,
	  dlls/newdev/.gitignore, dlls/ntdll/.cvsignore, dlls/ntdll/.gitignore,
	  dlls/ntdll/tests/.cvsignore, dlls/ntdll/tests/.gitignore,
	  dlls/objsel/.cvsignore, dlls/objsel/.gitignore,
	  dlls/odbc32/.cvsignore, dlls/odbc32/.gitignore,
	  dlls/odbccp32/.cvsignore, dlls/odbccp32/.gitignore,
	  dlls/ole32/.cvsignore, dlls/ole32/.gitignore,
	  dlls/ole32/tests/.cvsignore, dlls/ole32/tests/.gitignore,
	  dlls/oleacc/.cvsignore, dlls/oleacc/.gitignore,
	  dlls/oleaut32/.cvsignore, dlls/oleaut32/.gitignore,
	  dlls/oleaut32/tests/.cvsignore, dlls/oleaut32/tests/.gitignore,
	  dlls/olecli/.cvsignore, dlls/olecli/.gitignore,
	  dlls/oledlg/.cvsignore, dlls/oledlg/.gitignore,
	  dlls/olepro32/.cvsignore, dlls/olepro32/.gitignore,
	  dlls/olesvr/.cvsignore, dlls/olesvr/.gitignore,
	  dlls/opengl32/.cvsignore, dlls/opengl32/.gitignore,
	  dlls/powrprof/.cvsignore, dlls/powrprof/.gitignore,
	  dlls/psapi/.cvsignore, dlls/psapi/.gitignore,
	  dlls/psapi/tests/.cvsignore, dlls/psapi/tests/.gitignore,
	  dlls/qcap/.cvsignore, dlls/qcap/.gitignore, dlls/quartz/.cvsignore,
	  dlls/quartz/.gitignore, dlls/quartz/tests/.cvsignore,
	  dlls/quartz/tests/.gitignore, dlls/rasapi32/.cvsignore,
	  dlls/rasapi32/.gitignore, dlls/riched20/.cvsignore,
	  dlls/riched20/.gitignore, dlls/richedit/.cvsignore,
	  dlls/richedit/.gitignore, dlls/rpcrt4/.cvsignore,
	  dlls/rpcrt4/.gitignore, dlls/rpcrt4/tests/.cvsignore,
	  dlls/rpcrt4/tests/.gitignore, dlls/rsabase/.cvsignore,
	  dlls/rsabase/.gitignore, dlls/rsabase/tests/.cvsignore,
	  dlls/rsabase/tests/.gitignore, dlls/rsaenh/.cvsignore,
	  dlls/rsaenh/.gitignore, dlls/rsaenh/tests/.cvsignore,
	  dlls/rsaenh/tests/.gitignore, dlls/secur32/.cvsignore,
	  dlls/secur32/.gitignore, dlls/secur32/tests/.cvsignore,
	  dlls/secur32/tests/.gitignore, dlls/sensapi/.cvsignore,
	  dlls/sensapi/.gitignore, dlls/serialui/.cvsignore,
	  dlls/serialui/.gitignore, dlls/setupapi/.cvsignore,
	  dlls/setupapi/.gitignore, dlls/setupapi/tests/.cvsignore,
	  dlls/setupapi/tests/.gitignore, dlls/shdocvw/.cvsignore,
	  dlls/shdocvw/.gitignore, dlls/shdocvw/tests/.cvsignore,
	  dlls/shdocvw/tests/.gitignore, dlls/shell32/.cvsignore,
	  dlls/shell32/.gitignore, dlls/shell32/tests/.cvsignore,
	  dlls/shell32/tests/.gitignore, dlls/shfolder/.cvsignore,
	  dlls/shfolder/.gitignore, dlls/shlwapi/.cvsignore,
	  dlls/shlwapi/.gitignore, dlls/shlwapi/tests/.cvsignore,
	  dlls/shlwapi/tests/.gitignore, dlls/snmpapi/.cvsignore,
	  dlls/snmpapi/.gitignore, dlls/stdole2.tlb/.cvsignore,
	  dlls/stdole2.tlb/.gitignore, dlls/stdole32.tlb/.cvsignore,
	  dlls/stdole32.tlb/.gitignore, dlls/sti/.cvsignore,
	  dlls/sti/.gitignore, dlls/strmiids/.cvsignore,
	  dlls/strmiids/.gitignore, dlls/tapi32/.cvsignore,
	  dlls/tapi32/.gitignore, dlls/twain/.cvsignore, dlls/twain/.gitignore,
	  dlls/unicows/.cvsignore, dlls/unicows/.gitignore,
	  dlls/url/.cvsignore, dlls/url/.gitignore, dlls/urlmon/.cvsignore,
	  dlls/urlmon/.gitignore, dlls/urlmon/tests/.cvsignore,
	  dlls/urlmon/tests/.gitignore, dlls/user/.cvsignore,
	  dlls/user/.gitignore, dlls/user/resources/.cvsignore,
	  dlls/user/resources/.gitignore, dlls/user/tests/.cvsignore,
	  dlls/user/tests/.gitignore, dlls/usp10/.cvsignore,
	  dlls/usp10/.gitignore, dlls/uuid/.cvsignore, dlls/uuid/.gitignore,
	  dlls/uxtheme/.cvsignore, dlls/uxtheme/.gitignore,
	  dlls/vdhcp.vxd/.cvsignore, dlls/vdhcp.vxd/.gitignore,
	  dlls/vdmdbg/.cvsignore, dlls/vdmdbg/.gitignore,
	  dlls/version/.cvsignore, dlls/version/.gitignore,
	  dlls/version/tests/.cvsignore, dlls/version/tests/.gitignore,
	  dlls/vmm.vxd/.cvsignore, dlls/vmm.vxd/.gitignore,
	  dlls/vnbt.vxd/.cvsignore, dlls/vnbt.vxd/.gitignore,
	  dlls/vnetbios.vxd/.cvsignore, dlls/vnetbios.vxd/.gitignore,
	  dlls/vtdapi.vxd/.cvsignore, dlls/vtdapi.vxd/.gitignore,
	  dlls/vwin32.vxd/.cvsignore, dlls/vwin32.vxd/.gitignore,
	  dlls/win32s/.cvsignore, dlls/win32s/.gitignore,
	  dlls/winaspi/.cvsignore, dlls/winaspi/.gitignore,
	  dlls/winecrt0/.cvsignore, dlls/winecrt0/.gitignore,
	  dlls/wined3d/.cvsignore, dlls/wined3d/.gitignore,
	  dlls/winedos/.cvsignore, dlls/winedos/.gitignore,
	  dlls/wineps/.cvsignore, dlls/wineps/.gitignore,
	  dlls/wininet/.cvsignore, dlls/wininet/.gitignore,
	  dlls/wininet/tests/.cvsignore, dlls/wininet/tests/.gitignore,
	  dlls/winmm/.cvsignore, dlls/winmm/.gitignore,
	  dlls/winmm/joystick/.cvsignore, dlls/winmm/joystick/.gitignore,
	  dlls/winmm/mciwave/.cvsignore, dlls/winmm/mciwave/.gitignore,
	  dlls/winmm/tests/.cvsignore, dlls/winmm/tests/.gitignore,
	  dlls/winmm/wavemap/.cvsignore, dlls/winmm/wavemap/.gitignore,
	  dlls/winmm/winealsa/.cvsignore, dlls/winmm/winealsa/.gitignore,
	  dlls/winmm/winearts/.cvsignore, dlls/winmm/winearts/.gitignore,
	  dlls/winmm/wineaudioio/.cvsignore, dlls/winmm/wineaudioio/.gitignore,
	  dlls/winmm/wineesd/.cvsignore, dlls/winmm/wineesd/.gitignore,
	  dlls/winmm/winejack/.cvsignore, dlls/winmm/winejack/.gitignore,
	  dlls/winmm/winenas/.cvsignore, dlls/winmm/winenas/.gitignore,
	  dlls/winmm/wineoss/.cvsignore, dlls/winmm/wineoss/.gitignore,
	  dlls/winnls/.cvsignore, dlls/winnls/.gitignore,
	  dlls/winsock/.cvsignore, dlls/winsock/.gitignore,
	  dlls/winsock/tests/.cvsignore, dlls/winsock/tests/.gitignore,
	  dlls/winspool/.cvsignore, dlls/winspool/.gitignore,
	  dlls/winspool/tests/.cvsignore, dlls/winspool/tests/.gitignore,
	  dlls/wintab32/.cvsignore, dlls/wintab32/.gitignore,
	  dlls/wintrust/.cvsignore, dlls/wintrust/.gitignore,
	  dlls/wldap32/.cvsignore, dlls/wldap32/.gitignore,
	  dlls/wow32/.cvsignore, dlls/wow32/.gitignore,
	  dlls/wsock32/.cvsignore, dlls/wsock32/.gitignore,
	  dlls/wtsapi32/.cvsignore, dlls/wtsapi32/.gitignore,
	  dlls/x11drv/.cvsignore, dlls/x11drv/.gitignore,
	  documentation/.cvsignore, documentation/.gitignore, fonts/.cvsignore,
	  fonts/.gitignore, include/.cvsignore, include/.gitignore,
	  include/wine/.cvsignore, include/wine/.gitignore, libs/.cvsignore,
	  libs/.gitignore, libs/port/.cvsignore, libs/port/.gitignore,
	  libs/unicode/.cvsignore, libs/unicode/.gitignore,
	  libs/wine/.cvsignore, libs/wine/.gitignore, libs/wpp/.cvsignore,
	  libs/wpp/.gitignore, loader/.cvsignore, loader/.gitignore,
	  programs/.cvsignore, programs/.gitignore,
	  programs/avitools/.cvsignore, programs/avitools/.gitignore,
	  programs/clock/.cvsignore, programs/clock/.gitignore,
	  programs/cmdlgtst/.cvsignore, programs/cmdlgtst/.gitignore,
	  programs/control/.cvsignore, programs/control/.gitignore,
	  programs/eject/.cvsignore, programs/eject/.gitignore,
	  programs/expand/.cvsignore, programs/expand/.gitignore,
	  programs/explorer/.cvsignore, programs/explorer/.gitignore,
	  programs/hh/.cvsignore, programs/hh/.gitignore,
	  programs/msiexec/.cvsignore, programs/msiexec/.gitignore,
	  programs/notepad/.cvsignore, programs/notepad/.gitignore,
	  programs/progman/.cvsignore, programs/progman/.gitignore,
	  programs/regedit/.cvsignore, programs/regedit/.gitignore,
	  programs/regsvr32/.cvsignore, programs/regsvr32/.gitignore,
	  programs/rpcss/.cvsignore, programs/rpcss/.gitignore,
	  programs/rundll32/.cvsignore, programs/rundll32/.gitignore,
	  programs/start/.cvsignore, programs/start/.gitignore,
	  programs/taskmgr/.cvsignore, programs/taskmgr/.gitignore,
	  programs/uninstaller/.cvsignore, programs/uninstaller/.gitignore,
	  programs/view/.cvsignore, programs/view/.gitignore,
	  programs/wcmd/.cvsignore, programs/wcmd/.gitignore,
	  programs/wineboot/.cvsignore, programs/wineboot/.gitignore,
	  programs/winebrowser/.cvsignore, programs/winebrowser/.gitignore,
	  programs/winecfg/.cvsignore, programs/winecfg/.gitignore,
	  programs/wineconsole/.cvsignore, programs/wineconsole/.gitignore,
	  programs/winedbg/.cvsignore, programs/winedbg/.gitignore,
	  programs/winefile/.cvsignore, programs/winefile/.gitignore,
	  programs/winemenubuilder/.cvsignore,
	  programs/winemenubuilder/.gitignore, programs/winemine/.cvsignore,
	  programs/winemine/.gitignore, programs/winepath/.cvsignore,
	  programs/winepath/.gitignore, programs/winetest/.cvsignore,
	  programs/winetest/.gitignore, programs/winevdm/.cvsignore,
	  programs/winevdm/.gitignore, programs/winhelp/.cvsignore,
	  programs/winhelp/.gitignore, programs/winver/.cvsignore,
	  programs/winver/.gitignore, server/.cvsignore, server/.gitignore,
	  tools/.cvsignore, tools/.gitignore, tools/widl/.cvsignore,
	  tools/widl/.gitignore, tools/winapi/.cvsignore,
	  tools/winapi/.gitignore, tools/winebuild/.cvsignore,
	  tools/winebuild/.gitignore, tools/winedump/.cvsignore,
	  tools/winedump/.gitignore, tools/winegcc/.cvsignore,
	  tools/winegcc/.gitignore, tools/wmc/.cvsignore, tools/wmc/.gitignore,
	  tools/wrc/.cvsignore, tools/wrc/.gitignore:
	Renamed all .cvsignore files to .gitignore.

2005-11-24  Hans Leidekker <hans@it.vu.nl>

	* programs/winebrowser/main.c, tools/wine.inf:
	Also handle mailto: urls.

2005-11-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msvcrt/tests/printf.c:
	Add some tests for _fcvt.

2005-11-24  Marcus Meissner <meissner@suse.de>

	* include/usp10.h:
	extern "C" wrappers for usp10.h.

2005-11-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/helpers.c:
	Make all source directories at the root of the install.

2005-11-24  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/advapi32/lsa.c:
	Return a real error in LsaLookupSids.

2005-11-24  Vijay Kiran Kamuju <infyquest@gmail.com>

	* include/Makefile.in:
	Install usp10.h.

2005-11-24  Mike McCormack <mike@codeweavers.com>

	* dlls/wldap32/ber.c:
	Fix a compile error.

2005-11-24  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/opengl32/wgl_ext.c:
	Fix incorrect implementation of WGL_COLOR_BITS_ARB.

2005-11-24  Juan Lang <juan_lang@yahoo.com>

	* include/wincrypt.h:
	Add more declarations.

2005-11-23  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/rebar.c, dlls/comctl32/tooltips.c, dlls/d3d8/shader.c,
	  dlls/dinput/dinput_main.c, dlls/dinput/effect_linuxinput.c,
	  dlls/dinput/joystick_linuxinput.c, dlls/iphlpapi/iphlpapi_main.c,
	  dlls/quartz/filesource.c, dlls/rsaenh/mpi.c, dlls/rsaenh/tomcrypt.h,
	  dlls/shell32/shellpath.c, dlls/user/edit.c,
	  dlls/user/tests/sysparams.c, dlls/uxtheme/draw.c,
	  dlls/wined3d/basetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/surface.c, dlls/wined3d/utils.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h,
	  dlls/winedos/dosaspi.c, dlls/wineps/download.c, dlls/wininet/ftp.c,
	  dlls/wininet/tests/http.c, dlls/winspool/tests/info.c,
	  dlls/wintab32/context.c, programs/progman/En.rc,
	  programs/winedbg/gdbproxy.c, tools/widl/write_msft.c,
	  tools/wrc/translation.c:
	Assorted spelling fixes.

2005-11-23  Francois Gouget <fgouget@free.fr>

	* dlls/ntdll/resource.c, dlls/usp10/usp10.c, dlls/wininet/internet.c:
	Documentation tweaks to make winapi_check happy.
	Also specify the documented spec file entry.

2005-11-23  Henning Gerhardt <henning.gerhardt@web.de>

	* dlls/msvideo/msvfw32_De.rc, dlls/msvideo/rsrc.rc:
	Add German resource file for msvideo.

2005-11-23  Francois Gouget <fgouget@free.fr>

	* dlls/wldap32/control.c, dlls/wldap32/init.c,
	  dlls/wldap32/winldap_private.h, include/winldap.h,
	  tools/winapi/win32.api:
	winldap.h should include windeh.f and schnlsp.h.
	Enclose the API definitions in an extern "C" section and define
	LDAPAPI.
	Better stick to the types defined by the PSDK.
	Fix the ldap_create_vlv_control*() prototypes.
	Update win32.api.

2005-11-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/relay16.c, dlls/msvcrt/misc.c, dlls/ntdll/loader.c,
	  dlls/ntdll/relay.c, dlls/ntdll/resource.c, dlls/ntdll/signal_i386.c,
	  dlls/user/winproc.c, libs/wine/port.c, loader/preloader.c,
	  tools/winebuild/import.c:
	Preserve 16-byte stack alignment in the various assembly
	functions. Needed for MacOSX.

2005-11-23  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/msvideo/msvfw32_En.rc, dlls/msvideo/msvfw32_Ko.rc,
	  dlls/msvideo/rsrc.rc:
	Add Korean translation.

2005-11-23  Francois Gouget <fgouget@free.fr>

	* dlls/advpack/tests/advpack.c:
	Add trailing '\n' to trace() call.

2005-11-23  Francois Gouget <fgouget@free.fr>

	* dlls/winsock/socket.c, include/ws2tcpip.h, tools/winapi/win32.api:
	Add LPADDRINFO, missing IP_* defines and missing APIs.
	Enclose the API definitions in an extern "C" section.
	Define function pointer types if INCL_WINSOCK_API_TYPEDEFS is defined.
	Better stick to the types defined by the PSDK.
	Update win32.api.

2005-11-23  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/comctl32/comctl_Ko.rc, dlls/commdlg/cdlg_Ko.rc,
	  dlls/winmm/winmm_Ko.rc, dlls/winmm/winmm_res.rc,
	  programs/taskmgr/Ko.rc, programs/wcmd/Ko.rc, programs/winecfg/Ko.rc:
	Update Korean translations.

2005-11-23  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	Use the ANSI codepage in IShellFolder::GetDisplayNameOf.

2005-11-23  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/mscms/tests/profile.c:
	Be more strict and verbose while testing
	GetStandardColorSpaceProfile().

2005-11-23  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/tests/sysparams.c:
	Make test_SPI_SETBORDER less likely to permanently change visual
	settings:
	- use smaller border widths values for testing;
	- provide a work around for a Windows XP feature that made the tests
	change the caption width.

2005-11-23  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_desktop.c:
	Also scan HKEY_CURRENT_USER for shell namespace extensions in Desktop
	folder.
	Fixed a handle leak in case of failing AddToEnumList call.

2005-11-23  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_mycomp.c:
	Also scan HKEY_CURRENT_USER for shell namespace extensions in
	MyComputer.

2005-11-23  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/brsfolder.c:
	Initialize OLE instead of just COM, in order to enable Drag & Drop.

2005-11-23  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/commdlg/filedlg.c:
	Initialize OLE instead of COM only in order to enable Drag and Drop.

2005-11-23  Andrew Webb <andrew7webb@comcast.net>

	* include/commctrl.h:
	Define DateTime_SetMonthCalColor.

2005-11-23  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/encode.c, dlls/crypt32/tests/cert.c:
	Fix some memory leaks.

2005-11-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/event.c:
	Fixed some broken code that was causing compiler warnings.

2005-11-23  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/tests/domdoc.c:
	Release a stray node.

2005-11-22  Alexandre Julliard <julliard@winehq.org>

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

----------------------------------------------------------------
2005-11-22  Rein Klazes <wijn@wanadoo.nl>

	* dlls/commdlg/fontdlg16.c:
	Fixes for FormatCharDlgProc16:
	- properly store the ChooseFont pointer, use a window property as the
	A and W functions do;
	- handle other messages then WM_INITDIALOG and WM_MEASUREITEM as well.

2005-11-22  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/http.c:
	HttpEndRequest does not actually send an extra NULL byte at the end of
	the request. Help from Rob Shearman on this one.

2005-11-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/volume.c:
	Don't try to set the label in the superblock of FAT filesystems, that
	doesn't do the right thing anyway.

2005-11-22  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	Corrects an error in the _m3xm3 shader function in pixel and vertex
	shaders.

2005-11-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvideo/.cvsignore, dlls/msvideo/Makefile.in,
	  dlls/msvideo/drawdib.c, dlls/msvideo/msvfw32_En.rc,
	  dlls/msvideo/msvideo16.c, dlls/msvideo/msvideo_main.c,
	  dlls/msvideo/msvideo_private.h, dlls/msvideo/rsrc.rc:
	Add a semi-functional ICCompressorChoose implementation.

2005-11-22  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/sysparams.c, dlls/user/tests/sysparams.c:
	GetSystemMetrics fixes with corresponding tests.

2005-11-22  Vitaliy Margolen <wine-patch@kievinfo.com>

	* server/atom.c, server/change.c, server/clipboard.c, server/console.c,
	  server/debugger.c, server/event.c, server/fd.c, server/file.c,
	  server/handle.c, server/hook.c, server/mailslot.c, server/mapping.c,
	  server/mutex.c, server/named_pipe.c, server/object.c,
	  server/object.h, server/process.c, server/queue.c, server/registry.c,
	  server/request.c, server/semaphore.c, server/serial.c,
	  server/signal.c, server/snapshot.c, server/sock.c, server/thread.c,
	  server/timer.c, server/token.c, server/winstation.c:
	Add name_lookup function in object_ops.

2005-11-22  Rein Klazes <wijn@wanadoo.nl>

	* dlls/commdlg/fontdlg16.c:
	In CFn_CHOOSEFONT16to32W fix the conversion of the lpTemplateName and
	the lpszStyle fields.

2005-11-22  Hans Leidekker <hans@it.vu.nl>

	* programs/winebrowser/Makefile.in:
	No need to link against shell32 or user32.

2005-11-22  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	Fix some logic to allow HTTP_ADDREQ_FLAG_ADD to replace existing
	headers. Also adding a test for some header adding flags.

2005-11-22  Alexandre Julliard <julliard@winehq.org>

	* server/registry.c:
	Use struct unicode_str instead of null-terminated strings where
	possible, and remove constraints on total key path length.

2005-11-22  Robert Lunnon <bobl@optushome.com.au>

	* server/event.c, server/mutex.c, server/object.c, server/semaphore.c,
	  server/timer.c:
	Add stdarg.h where missing.

2005-11-22  Marcus Meissner <meissner@suse.de>

	* dlls/winsock/socket.c:
	EAI_NONAME -> WS_EAI_NODATA, check for EAI_NONAME and EAI_NODATA.

2005-11-22  Steven Edwards <winehacker@gmail.com>

	* dlls/ntdll/version.c:
	Correct URL for version infomation database website.

2005-11-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/tests/dc.c:
	Add a test showing that SaveDC after GetDC should return 1.

2005-11-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/client.c, dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h:
	Create window in SetClientSite and return it in
	IOleInPlaceSite::GetWindow.

2005-11-22  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/tests/http.c:
	Test the sizes of some of the parameters passed into the callback.

2005-11-22  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.c, dlls/wininet/internet.h,
	  dlls/wininet/utility.c:
	Rename SendAsyncCallback to INTERNET_SendCallback.

2005-11-22  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Fix an incorrect entry in the HTTP header field table causing broken
	Location field parsing.

2005-11-22  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/advpack/tests/advpack.c:
	Exit test after first TranslateInfString() failure, which seems to be
	NT3.51 specific.

2005-11-21  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	Implement a pixel shader parser and cross compiler. All version of
	shaders up to 3 should be parsed correctly, but only shaders 1-1.4
	will be cross compiled.

2005-11-21  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/tests/om.c, server/event.c, server/mailslot.c,
	  server/mapping.c, server/mutex.c, server/named_pipe.c,
	  server/object.c, server/semaphore.c, server/timer.c, server/trace.c,
	  server/winstation.c:
	Return correct error on name collision when creating new named
	objects.
	Check for correct error in affected places.

2005-11-21  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/sync.c, dlls/kernel/virtual.c:
	Kernel32 should create named objects with OBJ_OPENIF flag set.
	Handle STATUS_OBJECT_NAME_EXISTS explicitly as it's not mapped with
	RtlNtStatusToDosError.

2005-11-21  YunSong Hwang <hys545@dreamwiz.com>

	* programs/regedit/Ko.rc, programs/wcmd/Ko.rc:
	Update Korean translations.

2005-11-21  Alexandre Julliard <julliard@winehq.org>

	* programs/winecfg/drive.c:
	Only set label and serial number when they are actually changed.

2005-11-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/sync.c, dlls/ntdll/file.c, include/wine/server_protocol.h,
	  server/mailslot.c, server/protocol.def, server/trace.c:
	Fixed handling of mailslot read timeout to avoid compiler warnings.

2005-11-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/win.c:
	Choose what window styles to dump (WS_GROUP/WS_TABSTOP vs.
	WS_MINIMIZEBOX/WS_MAXIMIZEBOX) based on the WS_CHILD style set.

2005-11-21  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/tests/om.c:
	More Object Manager tests.

2005-11-21  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	Implement HttpSendRequestEx and HttpEndRequest. Restructure, breaking
	some things out of HTTP_SendRequestW to avoid duplicate code.

2005-11-21  Ge van Geldorp <gvg@reactos.org>

	* dlls/crypt32/encode.c:
	Don't redefine ASN_OCTETSTRING, it's already defined in snmp.h.

2005-11-21  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/shell32/iconcache.c, dlls/shell32/shell32_main.c,
	  dlls/shell32/shell32_main.h:
	SHGetFileInfoW(): handle SHGFI_LINKOVERLAY and SHGFI_OVERLAYINDEX.
	SHMapPIDLToSystemImageListIndex(): determine overlay flag for
	PidlToSicIndex() and return -1 in error cases.
	Read shell overlay icon settings from registry to allow icon
	overrides.

2005-11-21  Rein Klazes <wijn@wanadoo.nl>

	* dlls/msvcrt/locale.c:
	Fix bogus unreal code page messages in _setmbcp().

2005-11-21  Rein Klazes <wijn@wanadoo.nl>

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/msvcrt.spec:
	Do not forward _mbccpy to strcpy.
	Remove the error message in _mbccpy, it is not an error.

2005-11-21  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/comctl32/syslink.c:
	Improved word wrapping and tab key handling.

2005-11-21  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/advpack/advpack.c, include/advpub.h:
	Add/correct prototypes for some already defined functions in advpack.

2005-11-21  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/control.c, dlls/wldap32/winldap_private.h,
	  dlls/wldap32/wldap32.spec:
	Implement ldap_create_vlv_control{A,W},
	ldap_encode_sort_control{A,W}.
	Add a stub for ldap_create_page_control{A,W}.

2005-11-21  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/security.c, include/aclapi.h,
	  include/winsvc.h, tools/winapi/win32.api:
	Add/correct prototypes for some already defined functions in
	advapi32. Correct spec file entry for GetSecurityInfoExW.

2005-11-21  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/winstation.c, include/wine/server_protocol.h,
	  server/protocol.def, server/trace.c, server/winstation.c:
	Replace inherit flag with object attributes in winstation and desktop
	create & open. Use OBJ_OPENIF flag to create winstation & desktop.

2005-11-21  Rein Klazes <wijn@wanadoo.nl>

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/tests/string.c:
	Fix _mbsspn() with conformance tests.

2005-11-21  Hans Leidekker <hans@it.vu.nl>

	* dlls/hhctrl.ocx/Nl.rc, dlls/hhctrl.ocx/hhctrl.rc, dlls/mshtml/Nl.rc,
	  dlls/mshtml/rsrc.rc, dlls/winspool/Nl.rc, dlls/winspool/winspool.rc,
	  programs/taskmgr/De.rc, programs/taskmgr/Nl.rc,
	  programs/taskmgr/taskmgr.rc:
	Added Dutch translations.

2005-11-21  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/mshtml/Ko.rc, dlls/msi/msi_Ko.rc, dlls/oledlg/oledlg_Ko.rc,
	  dlls/wldap32/wldap32_Ko.rc, programs/start/Ko.rc,
	  programs/winecfg/Ko.rc, programs/wineconsole/wineconsole_Ko.rc,
	  programs/winefile/Ko.rc:
	Update Korean translations.

2005-11-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/x11drv/scroll.c:
	Print scroll and clip rectangles on the ScrollDC entry.

2005-11-21  Rob Shearman <rob@codeweavers.com>

	* dlls/advapi32/service.c:
	Don't try waiting for the service process to start if the
	CreateProcess call failed.

2005-11-21  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/registry.c:
	Loop around calling RegQueryValue until we have a big enough string
	for both the name and the value.

2005-11-21  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/shdocvw/dochost.c:
	Added GetHostInfo implementation.

2005-11-21  Ge van Geldorp <gvg@reactos.org>

	* dlls/netapi32/access.c, dlls/netapi32/netapi32.c, include/lmaccess.h:
	Fix some prototypes to match the PSDK.

2005-11-21  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/kernel/oldconfig.c:
	- ANSI SCSI revision is a hex number.
	- Be more verbose with parser ERRs.

2005-11-21  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/mswsock/mswsock.spec, dlls/rpcrt4/rpcrt4.spec:
	Mark some functions as implemented in the spec files.

2005-11-21  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winecfg/driveui.c:
	Create new drives with autodetect type.

2005-11-21  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/msvcrt/tests/file.c:
	Minor MSVCRT test changes:
	- add two invalid parameter checks for fopen(),
	- rearrange test sequence into two parts (low-level and stream I/O),
	- break long line.

2005-11-21  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/value.c:
	Fix the build without openldap.

2005-11-21  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* include/wincrypt.h:
	Add prototypes for some already defined functions in crypt32.

2005-11-21  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/internet.c:
	Implement the use of NETCON_send for HTTP connections when in
	InternetWriteFile.

2005-11-21  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/version/tests/install.c:
	Fix version tests on NT, 2K and XP, make some errors more verbose.

2005-11-21  Rein Klazes <wijn@wanadoo.nl>

	* dlls/winmm/wineoss/audio.c:
	Break from the SNDCTL_DSP_CHANNELS loops on first error instead of
	continuing with even higher channels numbers.

2005-11-21  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winsock/socket.c:
	Fixed typo in ws_sockaddr_u2ws().

2005-11-18  Hans Leidekker <hans@it.vu.nl>

	* configure, configure.ac, dlls/wldap32/init.c,
	  dlls/wldap32/winldap_private.h, dlls/wldap32/wldap32.h,
	  dlls/wldap32/wldap32.spec:
	Avoid using deprecated openldap functions.
	Implement ldap_sslinit{A,W}, improve cldap_open{A,W}.
	Add stub implementation for ldap_startup and ldap_stop_tls_s.

2005-11-18  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/types.c:
	Native dbghelp doesn't provide names for basic type, so added relevant
	basic type names in winedbg.

2005-11-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/commdlg/filedlg.c:
	There is no need to resize our own fake dialog to match the parent, it
	doesn't have controls anyway.

2005-11-18  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/mscms/tests/profile.c:
	Don't call unicode functions of file API as they fail on Win9x.

2005-11-18  Alexandre Julliard <julliard@winehq.org>

	* server/console.c, server/event.c, server/handle.c, server/handle.h,
	  server/mailslot.c, server/mapping.c, server/mutex.c,
	  server/named_pipe.c, server/object.c, server/object.h,
	  server/process.c, server/request.h, server/semaphore.c,
	  server/timer.c, server/user.h, server/winstation.c:
	Added a struct unicode_str to encapsulate object names.

2005-11-18  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/delete.c, dlls/wldap32/dn.c, dlls/wldap32/error.c,
	  dlls/wldap32/misc.c, dlls/wldap32/modify.c, dlls/wldap32/modrdn.c,
	  dlls/wldap32/option.c, dlls/wldap32/search.c, dlls/wldap32/value.c:
	Avoid using deprecated openldap functions.
	Correct some return values.

2005-11-18  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/stack.c, programs/winedbg/symbol.c,
	  programs/winedbg/winedbg.c:
	Centralized calls for SymSetContext, we only do it when we change the
	current stack frame, and no longer every time we look up local symbols
	on current stack

2005-11-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/tests/thread.c:
	Avoid setting the context before the thread has started running, it's
	broken on most Windows versions.

2005-11-18  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/msxml_private.h, dlls/msxml3/node.c,
	  dlls/msxml3/nodelist.c, dlls/msxml3/nodemap.c,
	  dlls/msxml3/tests/domdoc.c:
	Ref count the xmlDocPtr.
	If two nodes refer to the same xmlNodePtr don't return same object.

2005-11-18  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/add.c, dlls/wldap32/bind.c, dlls/wldap32/compare.c:
	Avoid using deprecated openldap functions.
	Correct some return values.

2005-11-18  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/debugger.h, programs/winedbg/memory.c,
	  programs/winedbg/stack.c:
	Move print_func_and_args to stack.c, where it belongs.

2005-11-18  Kieran Clancy <n0dalus+wine@gmail.com>

	* dlls/user/static.c:
	Fix vertical text alignment in static controls.

2005-11-18  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/comctl32/tests/.cvsignore, dlls/comctl32/tests/Makefile.in,
	  dlls/comctl32/tests/header.c:
	Added header control tests.

2005-11-18  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/dbg.y, programs/winedbg/debugger.h,
	  programs/winedbg/stack.c, programs/winedbg/symbol.c,
	  programs/winedbg/winedbg.c:
	- now storing frames information in thread structure
	- frames are cached after each thread stops execution
	- reimplemented backtrace on top of this

2005-11-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/tests/locale.c:
	Added a few more Unicode digits from Unicode version 4.1.

2005-11-18  Alexandre Julliard <julliard@winehq.org>

	* libs/unicode/c_037.c, libs/unicode/c_10000.c, libs/unicode/c_10006.c,
	  libs/unicode/c_10007.c, libs/unicode/c_10029.c,
	  libs/unicode/c_1006.c, libs/unicode/c_10079.c,
	  libs/unicode/c_10081.c, libs/unicode/c_1026.c, libs/unicode/c_1250.c,
	  libs/unicode/c_1251.c, libs/unicode/c_1252.c, libs/unicode/c_1253.c,
	  libs/unicode/c_1254.c, libs/unicode/c_1255.c, libs/unicode/c_1256.c,
	  libs/unicode/c_1257.c, libs/unicode/c_1258.c, libs/unicode/c_20866.c,
	  libs/unicode/c_20932.c, libs/unicode/c_21866.c,
	  libs/unicode/c_28591.c, libs/unicode/c_28592.c,
	  libs/unicode/c_28593.c, libs/unicode/c_28594.c,
	  libs/unicode/c_28595.c, libs/unicode/c_28596.c,
	  libs/unicode/c_28597.c, libs/unicode/c_28598.c,
	  libs/unicode/c_28599.c, libs/unicode/c_28600.c,
	  libs/unicode/c_28603.c, libs/unicode/c_28604.c,
	  libs/unicode/c_28605.c, libs/unicode/c_28606.c, libs/unicode/c_424.c,
	  libs/unicode/c_437.c, libs/unicode/c_500.c, libs/unicode/c_737.c,
	  libs/unicode/c_775.c, libs/unicode/c_850.c, libs/unicode/c_852.c,
	  libs/unicode/c_855.c, libs/unicode/c_856.c, libs/unicode/c_857.c,
	  libs/unicode/c_860.c, libs/unicode/c_861.c, libs/unicode/c_862.c,
	  libs/unicode/c_863.c, libs/unicode/c_864.c, libs/unicode/c_865.c,
	  libs/unicode/c_866.c, libs/unicode/c_869.c, libs/unicode/c_874.c,
	  libs/unicode/c_875.c, libs/unicode/c_878.c, libs/unicode/c_932.c,
	  libs/unicode/c_936.c, libs/unicode/c_949.c, libs/unicode/c_950.c,
	  libs/unicode/casemap.c, libs/unicode/wctype.c:
	Updated codepage tables to Unicode version 4.1.

2005-11-18  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/comctl32/comctl_Ko.rc, dlls/serialui/Ko.rc, dlls/shdocvw/Ko.rc,
	  dlls/wineps/wps_Ko.rc, programs/cmdlgtst/Ko.rc,
	  programs/cmdlgtst/cmdlgr.rc:
	Update Korean translations.

2005-11-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/win.c:
	Add another test for Z order of child windows.

2005-11-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel/vxd.c:
	Use case insensitive comparison to check file extensions.

2005-11-18  Peter Beutner <p.beutner@gmx.net>

	* dlls/x11drv/opengl.c:
	Fix wrong use of the PFD_GENERIC_ACCELERATED flag. It indicates that
	the selected pixel format lacks full hardware acceleration and only a
	few parts are accelerated. So don't always set it but only if the X
	server actually reports that the selected pixel format is not fully
	accelerated.

2005-11-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/events.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	Free ConnectionPoint objects (fix memory leak).

2005-11-18  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/msvcrt/undname.c:
	Ensures, when we cannot demangle the string, to return the mangled
	name instead of a NULL pointer.

2005-11-18  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/symbol.c,
	  programs/winedbg/symbol.c, programs/winedbg/winedbg.c:
	Now returning correct symbol flags (as native does) for function pmts
	& locals in dbghelp.
	Modified winedbg accordingly.

2005-11-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/twain/dsm_ctrl.c:
	If SANE returns empty device list treat it as an error.

2005-11-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/atl/registrar.c:
	Fix parsing '{' char.

2005-11-18  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/capture.c, dlls/dsound/tests/dsound_test.h:
	Handle failure on Windows 95 properly.
	Make two functions available to all files.
	Make format_string() const correct.

2005-11-17  Marcus Meissner <marcus@jet.franken.de>

	* configure, configure.ac, dlls/winsock/socket.c,
	  dlls/winsock/ws2_32.spec, include/config.h.in, include/ws2tcpip.h:
	Implemented getaddrinfo(), including full mapping of struct addrinfo
	between UNIX and Windows. Based on a patch by Mike Hearn.

2005-11-17  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/dbghelp_private.h,
	  dlls/dbghelp/type.c, programs/winedbg/dbg.y,
	  programs/winedbg/types.c:
	Dbghelp describes the types of function arguments with a specific
	symbol-type (symt) which links both to arguments' type and to function
	prototype
	- added this new type to dbghelp
	- implemented its use in winedbg

2005-11-17  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/elf_module.c, dlls/dbghelp/msc.c,
	  dlls/dbghelp/stabs.c, dlls/dbghelp/symbol.c, dlls/dbghelp/type.c,
	  programs/winedbg/break.c, programs/winedbg/expr.c,
	  programs/winedbg/memory.c, programs/winedbg/symbol.c,
	  programs/winedbg/types.c:
	SymGetType(...,TI_GET_LENGTH,...) requires a 64 bit parameter, not a
	32 bit one.

2005-11-17  Alexandre Julliard <julliard@winehq.org>

	* libs/unicode/cpmap.pl:
	Only update modified files.

2005-11-17  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/shdocvw/events.c, dlls/shdocvw/shdocvw.h:
	Improve IConnectionPoint handling.

2005-11-17  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c:
	Disable support for creation FMT_Unknown textures. This gets most of
	the d3d8 demos from www.codesampler.com working.

2005-11-17  Robert Shearman <rob@codeweavers.com>

	* libs/unicode/cpmap.pl, libs/unicode/wctype.c:
	Remove some incompatibilities in the wctype table by updating the
	space, blank and cntrl exceptions and fixing the type given to
	characters in the "Zl" and "Zp" classes.

2005-11-17  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/comctl32/header.c:
	Return false if index is out of bounds in GetItemT.

2005-11-17  Alexandre Julliard <julliard@winehq.org>

	* programs/explorer/explorer.c:
	Fixed invalid C syntax.

2005-11-17  Robert Shearman <rob@codeweavers.com>

	* dlls/kernel/profile.c:
	The BOM doesn't need a DWORD sized variable, only a WCHAR one.
	Don't increment the szFile pointer since we removed the BOM earlier
	and it will cause the first real character of the INI file to be
	skipped.

2005-11-17  Martin Fuchs <martin-fuchs@gmx.net>

	* programs/winefile/winefile.c, programs/winefile/winefile.h:
	Use command line for initial directory selection.
	Remove useless hwndParent variable.

2005-11-17  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/swapchain.c:
	Clear the z and stencil buffers at the end of the scene, this fixes a
	problem with the solid node bsp demo from www.codesampler.com as well
	as a lot of blank screens in some other demos.

2005-11-17  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/msvcrt/tests/cpp.c:
	Provide a sample of the joy of MSC symbol mangling.

2005-11-17  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/symbol.c:
	When a symbol name already contains a module name, we shouldn't search
	in other modules.

2005-11-17  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/dbg.y, programs/winedbg/debug.l,
	  programs/winedbg/debugger.h:
	Simplification of lex's input reading.

2005-11-17  Detlef Riekenberg <wine.dev@web.de>

	* dlls/user/tests/monitor.c:
	Made test loadable on win95 again (EnumDisplayDevicesA not present).

2005-11-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/client.c, dlls/shdocvw/dochost.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	Added stub implementation of IDocHostUIHandler.

2005-11-17  Jacek Caban <jacek@codeweavers.com>

	* include/mshtmhst.idl:
	Added IHTMLWindow forward declaration.

2005-11-17  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/win32.api:
	Update win32.api to cvs.

2005-11-16  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	Fix _fcloseall() return value.
	Improve some trace messages.
	Add tests for fopen(), fclose(), _fcloseall().
	Stricten some checks of _unlink().

2005-11-16  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	Added OLEIVERB_INPLACEACTIVATE implementation in IOleObject::DoVerb.

2005-11-16  Aric Stewart <aric@codeweavers.com>

	* configure, configure.ac, programs/Makefile.in,
	  programs/explorer/.cvsignore, programs/explorer/Makefile.in,
	  programs/explorer/explorer.c:
	Beginnings of an explorer.exe replacement that wraps the existing
	winefile program.

2005-11-16  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/dbg.y, programs/winedbg/debugger.h,
	  programs/winedbg/winedbg.c, programs/winedbg/winedbg.man.in:
	Added ability to execute commands from a file passed on command line
	(through --file option).
	Use that feature to get rid of arg_command hack (--command option now
	creates a temporary file).

2005-11-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/edit.c, dlls/user/tests/msg.c:
	Add a test for some edit control behaviours, make it pass under Wine.

2005-11-16  Robert Reif <reif@earthlink.net>

	* dlls/winmm/wavemap/wavemap.c:
	Only convert bits per sample between different encoding formats.

2005-11-16  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winsock/socket.c, include/ws2tcpip.h:
	Added mapping between unix and windows sockaddr_in6(_old) and
	sockaddr_in. Added address family, socket type mappers.

2005-11-16  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	- Improve callback to give context sensitive information about the
	different statuses and print the thread ID that it was called from.
	- Replace the busy waiting on the "goon" flag with an event.
	- Replace hard coded numbers with more informative constants
	throughout the InternetReadFile test.
	- Add tests for InternetReadFileExA.
	- Fix the error value from calling InternetReadFile with a NULL handle
	as indicated by the test.

2005-11-16  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/client.c, dlls/shdocvw/shdocvw.h:
	Added IOleInPlaceSite stub implementation.

2005-11-15  Mike McCormack <mike@codeweavers.com>

	* tools/wine.inf:
	Add timezone information to the registry.

2005-11-15  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.h,
	  dlls/wininet/utility.c:
	We shouldn't pass the struct hostent returned from gethostbyname as
	it's not thread-safe and isn't needed anyway.

2005-11-15  Ken Thomases <ken@codeweavers.com>

	* dlls/ntdll/signal_i386.c:
	Updated context definitions for the latest Darwin/x86.

2005-11-15  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.c:
	Correct the size of a callback parameter.
	Fix the declaration of INTERNET_WorkerThreadFunc.

2005-11-15  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/registry.c:
	Convert MsiEnumComponentQualifiers to use msi_strcpy_to_awstring.

2005-11-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/wininet/urlcache.c:
	Fixed Unicode buffer size bug in CreateUrlCacheEntryW.

2005-11-15  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.spec, dlls/msi/registry.c, include/msi.h:
	Fix function prototype and spec file entry for
	MsiEnumComponentQualifiers.

2005-11-15  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/comctl32/header.c:
	Implement implement header callback support (HDN_GETDISPINFO notification):
	- better factorisation
	- unicode fixes

2005-11-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/urlmon/tests/url.c:
	Don't crash if BindToStorage fails.

2005-11-15  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/install.c:
	Only return ERROR_MORE_DATA if there's a buffer to copy a result
	into.

2005-11-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/focus.c:
	Do not change focus if the being activated window is no longer
	active.

2005-11-15  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/tests/drive.c:
	Made test loadable on NT 3.51 again (GetDiskFreeSpaceExA not present).

2005-11-15  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	Some extra tests for GetPrinterDriverDirectory.
	Display a TRACE when the Service "spooler" is not running (NT).

2005-11-15  Cihan Altinay <cihan@uq.edu.au>

	* dlls/kernel/comm.c:
	Disable PARMRK input flag of serial ports.

2005-11-15  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/avifil32/avifile_Ko.rc, dlls/mshtml/Ko.rc,
	  dlls/wldap32/wldap32_Ko.rc, programs/taskmgr/Ko.rc,
	  programs/uninstaller/Ko.rc, programs/view/Ko.rc,
	  programs/winefile/Ko.rc:
	Update Korean translations.

2005-11-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/resource.c, dlls/ntdll/signal_i386.c:
	Use proper asm name for external functions.

2005-11-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdll/sec.c, dlls/ntdll/tests/rtl.c:
	Add a test for RtlAllocateAndInitializeSid, make it pass under Wine.

2005-11-15  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/client.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	Beginning implementation of Navigate2.

2005-11-15  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	- defined D3DCOLOR_B macros to access byte values of D3DCOLOR
	- use D3DCOLOR macros instead of using shift + masks
	- fix a bug where diffuse.lpData checked instead of specular.lpData
	- implement color fixup on ARB VShader compilation code:
	-> on input parameters using swizzle
	-> add is_color parameter on vshader_program_add_param

2005-11-15  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec, include/usp10.h:
	Add stubs around ScriptStringAnalyse to avoid PAF crash.

2005-11-15  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	INTERNET_STATUS_HANDLE_CREATED notifications just send the handle, not
	an INTERNET_ASYNC_RESULT structure.
	The source handle in HTTP_Connect should be the parent's handle.

2005-11-15  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.h, dlls/wininet/netconnection.c:
	SSL doesn't need to use a different socket to unsecure communications.

2005-11-15  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/kernel/tests/thread.c:
	Corrected last error information.
	Make sure we can run the tests on win9x.

2005-11-15  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/package.c:
	Set the Installed property if the product is already installed.

2005-11-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/input.c, server/queue.c:
	Added support for the QS_ALLPOSTMESSAGE flag.

2005-11-14  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/urlmon/Makefile.in, dlls/urlmon/binding.c, dlls/urlmon/tests/url.c,
	  dlls/urlmon/umon.c, dlls/urlmon/urlmon_main.h:
	Beginning of true BindToStorage implementation.

2005-11-14  Huw Davies <huw@codeweavers.com>

	* tools/widl/header.c:
	Prefix [putref] property names with putref_.

2005-11-14  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/sysparams.c, dlls/user/tests/sysparams.c:
	Fix SysparametersInfoA( SPI_SETICONMETRICS), the A<->W conversion was
	rather broken.
	Make the SPI_{G|S}ETICONMETRICS functions more consistent with those
	for SPI_ICON{HORIZONTAL|VERTICAL}SPACING, SPI_{G|S}ICONTITLEWRAP and
	SPI_{G|S}ICONTITLELOGFONT.
	Accordingly extend the corresponding tests.

2005-11-14  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/msvcrt/tests/cpp.c, dlls/msvcrt/undname.c:
	Undname: Allow more then one coded character in demangle_datatype.

2005-11-14  Vitaliy Margolen <wine-patch@kievinfo.com>

	* tools/wine.inf:
	Add default version information.

2005-11-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/tests/pipe.c, dlls/ntdll/file.c:
	NtReadFile: now returning correct status in NtReadFile for EOF
	conditions (on files) and broken pipe (on named pipes).

2005-11-14  Peter Beutner <p.beutner@gmx.net>

	* dlls/gdi/dib.c, dlls/gdi/tests/bitmap.c:
	When creating DIBs with a color depth <= 8, always set biClrUsed field
	to the number of entries in the color table.

2005-11-14  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/cond.y, dlls/msi/tests/package.c:
	Empty strings are not equal to any number, so all comparisons against
	them fail except for tests for non-equalness.

2005-11-14  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c:
	Fix an intermittent lockup with ATI's driver, I expect the problem is
	trying to clear the display before it's visible. Also correct the
	clear alpha value.

2005-11-14  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/urlmon/internet.c, dlls/urlmon/session.c,
	  dlls/urlmon/urlmon_main.h:
	Added get_protocol_iface internal function and use it in
	get_protocol_info.

2005-11-14  Lionel Ulmer <lionel.ulmer@free.fr>

	* dlls/ddraw/surface_main.c:
	Use the front buffer palette for DC operations on off-screen buffers.

2005-11-14  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/advpack/tests/advpack.c:
	Get the version and language ID of ADVPACK.DLL too.

2005-11-14  H. Verbeet <hverbeet@gmail.com>

	* dlls/ddraw/surface_dib.c:
	Fix the default value for keylow in DIB_DirectDrawSurface_Blt.
	Unset DDBLT_DDFX when lpbltfx is NULL / contains no dwDDFX.

2005-11-14  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/avifil32/avifile_Ko.rc, dlls/avifil32/rsrc.rc, dlls/mpr/mpr.rc,
	  dlls/mpr/mpr_Ko.rc, dlls/mshtml/Ko.rc, dlls/mshtml/rsrc.rc,
	  dlls/msi/msi.rc, dlls/msi/msi_Ko.rc, dlls/oledlg/oledlg_Ko.rc,
	  dlls/oledlg/rsrc.rc, dlls/serialui/Ko.rc,
	  dlls/serialui/serialui_rc.rc, dlls/shdocvw/Ko.rc,
	  dlls/shdocvw/shdocvw.rc, dlls/winspool/Ko.rc,
	  dlls/winspool/winspool.rc, dlls/wldap32/wldap32.rc,
	  dlls/wldap32/wldap32_Ko.rc, programs/notepad/Ko.rc,
	  programs/notepad/rsrc.rc, programs/regedit/Ko.rc,
	  programs/start/Ko.rc, programs/start/rsrc.rc, programs/taskmgr/Ko.rc,
	  programs/taskmgr/taskmgr.rc, programs/uninstaller/Ko.rc,
	  programs/uninstaller/rsrc.rc, programs/view/Ko.rc,
	  programs/view/viewrc.rc, programs/wcmd/Ko.rc,
	  programs/wcmd/wcmdrc.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/winecfg.rc, programs/wineconsole/wineconsole_Ko.rc,
	  programs/wineconsole/wineconsole_res.rc, programs/winefile/Ko.rc,
	  programs/winefile/rsrc.rc, programs/winemine/Ko.rc,
	  programs/winemine/rsrc.rc:
	Add Korean translations.

2005-11-14  Markus Amsler <markus.amsler@oribi.org>

	* dlls/iphlpapi/iphlpapi_main.c:
	Add, reformat API documentation.

2005-11-14  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/cond.y, dlls/msi/tests/package.c:
	Fix comparison of empty properties to numbers and add test cases.

2005-11-14  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/msg.c:
	Fix message tests to run cleanly on Windows XP SP1.

2005-11-14  Edgar Hucek <gimli@gentoo.org>

	* dlls/winmm/joystick/joystick.c:
	Unicode compile fix.

2005-11-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/tests/thread.c:
	Fix set_test_val function declaration to ensure stack is left
	untouched.

2005-11-14  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	Fix a test for InternetCreateUrlA as no Windows platform sets last
	error here. Make InternetCreateUrlA pass the test.

2005-11-14  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/crypt32/tests/cert.c:
	Don't call missing API function.

2005-11-14  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/ddraw/ddraw_utils.c, dlls/ddraw/surface_dib.c:
	Add DDBLT_DONOTWAIT flag.
	Separate DDBLT_WAIT and DDBLT_ASYNC fixme in Blt method.

2005-11-14  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/urlmon/umon.c:
	Move BindToStorage hack to the separated function.

2005-11-14  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/d3d9/cubetexture.c, dlls/d3d9/device.c, dlls/d3d9/indexbuffer.c,
	  dlls/d3d9/pixelshader.c, dlls/d3d9/query.c, dlls/d3d9/stateblock.c,
	  dlls/d3d9/swapchain.c, dlls/d3d9/texture.c, dlls/d3d9/vertexbuffer.c,
	  dlls/d3d9/vertexdeclaration.c, dlls/d3d9/vertexshader.c,
	  dlls/d3d9/volumetexture.c:
	Remove the setting of the result pointer to NULL in creates, tests
	show that windows doesn't set the result to NULL on error.

2005-11-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/thread.c:
	Init wShowWindow in RTL_USER_PARAMETERS for Wine processes started
	from the command-line.

2005-11-14  Peter Lemenkov <petro@mail.ru>

	* include/rpcdce.h:
	Added extern "C".

2005-11-14  Markus Amsler <markus.amsler@oribi.org>

	* dlls/comctl32/imagelist.c:
	Reformat "see" section, to match c2man requirements.

2005-11-12  Markus Amsler <markus.amsler@oribi.org>

	* dlls/commdlg/cdlg32.c, dlls/commdlg/colordlg.c,
	  dlls/commdlg/filetitle.c, dlls/commdlg/finddlg32.c,
	  dlls/commdlg/fontdlg.c, dlls/commdlg/printdlg.c:
	Improve c2man Documented-Total count. Changes:
	- add missing description
	- complete missing A/W pairs
	- document remaining comdlg32 functions

2005-11-12  Markus Amsler <markus.amsler@oribi.org>

	* dlls/advapi32/crypt.c, dlls/advapi32/crypt_sha.c,
	  dlls/advapi32/eventlog.c, dlls/advapi32/registry.c,
	  dlls/advapi32/security.c:
	Improve c2man Documented-Total count. Changes:
	- add missing description
	- add missing returns section

2005-11-12  Stefan Leichter <Stefan.Leichter@camLine.com>

	* programs/winetest/Makefile.in:
	Add shdocvw tests to winetest.

2005-11-12  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c:
	Implement CLSCTX_INPROC_HANDLER in CoGetClassObject similar to
	CLSCTX_INPROC_SERVER by looking at the InprocHandler32 registry key
	instead of InprocServer32.

2005-11-12  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/kernel/tests/thread.c:
	Add some extra error information.

2005-11-12  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.c, dlls/wininet/internet.h:
	Implement InternetReadFileExA (based on a patch by Brian Gerst).

2005-11-12  Daniel Remenak <dtremenak@gmail.com>

	* dlls/dinput/joystick_linuxinput.c:
	Add additional sanity checks to the linux input system dinput joystick
	implementation.

2005-11-12  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/dbg.y, programs/winedbg/debug.l:
	Removed a couple of shift/reduce warnings in grammar.

2005-11-12  Rein Klazes <wijn@wanadoo.nl>

	* programs/regedit/Nl.rc:
	Update Dutch resources.

2005-11-12  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/shdocvw.h, dlls/shdocvw/view.c,
	  dlls/shdocvw/webbrowser.c:
	Added IViewObject2 stub implementation.

2005-11-12  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/version/tests/.cvsignore, dlls/version/tests/Makefile.in,
	  dlls/version/tests/install.c:
	Added some tests for VerFindFileA.

2005-11-12  Phil Lodwick <Phil.Lodwick@EFI.COM>

	* dlls/kernel/path.c, dlls/kernel/tests/path.c:
	prefix can be NULL for GetTempFileNameW.

2005-11-11  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/hhctrl.ocx/Ko.rc, dlls/hhctrl.ocx/hhctrl.rc, dlls/msacm/msacm.rc,
	  dlls/msacm/msacm_Ko.rc, dlls/msrle32/msrle_Ko.rc,
	  dlls/msrle32/rsrc.rc, dlls/oleaut32/oleaut32.rc,
	  dlls/oleaut32/oleaut32_Ko.rc, dlls/setupapi/Ko.rc,
	  dlls/setupapi/setupapi.rc, dlls/shlwapi/shlwapi.rc,
	  dlls/shlwapi/shlwapi_Ko.rc, dlls/wininet/rsrc.rc,
	  dlls/wininet/wininet_Ko.rc:
	Add Korean translations.

2005-11-11  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/urlmon/urlmon.spec:
	Correct argument count for URLDownloadToCacheFile{A,W}.

2005-11-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shell32/shell.c, dlls/shell32/shell32_main.h,
	  dlls/shell32/shlexec.c:
	Unconditionally fall back to ANSI DDE APIs in ShellExecute if current
	emulated Windows version is Win9x, Excel refuses to communicate with a
	unicode client in win9x mode.

2005-11-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/dde_client.c:
	Convert some ERRs to WARNs in the DDE client code when appropriate.

2005-11-11  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/kernel/heap.c:
	Protect sys/stat.h with a conditional.

2005-11-11  Steven Edwards <winehacker@gmail.com>

	* dlls/msi/msi.c:
	Partly implement MsiMessageBox[A/W] on top of MessageBoxEx[A/W]

2005-11-11  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	Moved and adopted joystick_linux.c code into the
	joystick_linuxinput.c.

2005-11-11  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.h,
	  dlls/opengl32/opengl_norm.c, dlls/opengl32/wgl.c,
	  dlls/opengl32/wgl_ext.c, dlls/x11drv/opengl.c:
	Add GLXFBConfig on Wine_GLContext (we should remove XVisualInfo
	references on code).
	Hook glGetIntegerv on GL_ALPHA_BITS to query on GLXFBConfig instead of
	glGetInteger (as it returns bad value).

2005-11-10  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/security.c, dlls/comctl32/comboex.c,
	  dlls/comctl32/listview.c, dlls/comctl32/treeview.c,
	  dlls/commdlg/filetitle.c, dlls/d3d8/cubetexture.c,
	  dlls/d3d8/device.c, dlls/d3d8/directx.c, dlls/d3d8/shader.c,
	  dlls/d3d8/stateblock.c, dlls/d3d8/texture.c, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/d3d9/vertexshader.c,
	  dlls/ddraw/ddraw_main.c, dlls/ddraw/device_main.c,
	  dlls/ddraw/device_opengl.c, dlls/ddraw/executebuffer.c,
	  dlls/ddraw/light.c, dlls/ddraw/opengl_utils.c,
	  dlls/ddraw/surface_main.c, dlls/ddraw/vertexbuffer.c,
	  dlls/dinput/device.c, dlls/dinput/mouse.c,
	  dlls/dmime/segtriggertrack.c, dlls/dmscript/script.c,
	  dlls/dmstyle/styletrack.c, dlls/dplayx/dplay.c, dlls/dpnet/address.c,
	  dlls/dsound/dsound_main.c, dlls/dxdiagn/provider.c,
	  dlls/gdi/bitmap.c, dlls/gdi/mfdrv/bitblt.c, dlls/kernel/comm.c,
	  dlls/mcicda/mcicda.c, dlls/mciseq/mcimidi.c, dlls/msi/action.c,
	  dlls/msi/custom.c, dlls/msi/files.c, dlls/msi/format.c,
	  dlls/msi/package.c, dlls/msi/table.c, dlls/msvcrt/tests/cpp.c,
	  dlls/ntdll/misc.c, dlls/odbc32/proxyodbc.c, dlls/ole32/antimoniker.c,
	  dlls/ole32/bindctx.c, dlls/ole32/ole2.c, dlls/oleaut32/typelib.c,
	  dlls/oleaut32/varformat.c, dlls/olepro32/olepro32stubs.c,
	  dlls/opengl32/wgl.c, dlls/opengl32/wgl_ext.c,
	  dlls/shell32/cpanelfolder.c, dlls/shell32/enumidlist.c,
	  dlls/shell32/pidl.c, dlls/shell32/shelllink.c,
	  dlls/shell32/shellord.c, dlls/shell32/shfldr_desktop.c,
	  dlls/shell32/shfldr_mycomp.c, dlls/shell32/tests/shlfileop.c,
	  dlls/shlwapi/tests/ordinal.c, dlls/tapi32/line.c, dlls/user/comm16.c,
	  dlls/user/dde_misc.c, dlls/user/tests/menu.c,
	  dlls/vwin32.vxd/vwin32.c, dlls/wined3d/basetexture.c,
	  dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/query.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/surface.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/texture.c, dlls/wined3d/volumetexture.c,
	  dlls/wined3d/wined3d_main.c, dlls/winedos/int10.c,
	  dlls/winedos/int15.c, dlls/wininet/ftp.c, dlls/wininet/http.c,
	  dlls/wininet/internet.c, dlls/winmm/mci.c,
	  dlls/winmm/mciwave/mciwave.c, dlls/winmm/mmsystem.c,
	  dlls/winmm/playsound.c, dlls/winmm/tests/mixer.c,
	  dlls/winmm/winealsa/audio.c, dlls/winmm/winearts/audio.c,
	  dlls/winmm/wineesd/audio.c, dlls/winsock/socket16.c,
	  dlls/winsock/tests/sock.c, dlls/wintab32/context.c,
	  dlls/wsock32/socket.c, dlls/x11drv/event.c, dlls/x11drv/keyboard.c,
	  dlls/x11drv/palette.c, dlls/x11drv/xfont.c, dlls/x11drv/xrandr.c,
	  programs/winevdm/winevdm.c:
	Remove spaces before '\n' in traces.

2005-11-10  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/listview.c, dlls/dxerr8/errors.awk,
	  dlls/dxerr9/errors.awk, dlls/msi/package.c, dlls/msi/tests/package.c,
	  dlls/msxml3/tests/domdoc.c, dlls/oleaut32/olepicture.c,
	  dlls/secur32/dispatcher.c, dlls/user/exticon.c,
	  dlls/wined3d/directx.c, dlls/wined3d/surface.c,
	  dlls/wined3d/vertexshader.c, dlls/winmm/wineoss/mmaux.c,
	  tools/sfnt2fnt.c:
	Assorted spelling and case fixes.

2005-11-10  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/advpack/tests/advpack.c:
	WinME fixes:
	- don't fail on WriteFile(),
	- add valid error codes,
	- empty buffer to avoid printing garbage,
	- remove bogus inf-file which TranslateInfString() creates here.

2005-11-10  Markus Amsler <markus.amsler@oribi.org>

	* tools/c2man.pl:
	Make parameter higlighting regex less "hungry".

2005-11-10  Francois Gouget <fgouget@codeweavers.com>

	* programs/winemenubuilder/winemenubuilder.c:
	Parse the command line returned by CommandLineFromMsiDescriptor() to
	extract the application path. Otherwise winemenubuilder ignores the
	.lnk file entirely.

2005-11-10  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/tests/toolbar.c, dlls/d3d9/device.c,
	  dlls/kernel/tests/thread.c, dlls/msxml3/tests/domdoc.c,
	  dlls/setupapi/tests/parser.c, dlls/user/tests/msg.c:
	Add trailing '\n's to ok() and TRACE() calls.

2005-11-10  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/kernel/tests/path.c:
	Add error code valid for Win9x and XP.

2005-11-10  Markus Amsler <markus.amsler@oribi.org>

	* dlls/shell32/brsfolder.c, dlls/shell32/pidl.c, dlls/shell32/shell.c,
	  dlls/shell32/shellole.c, dlls/shell32/shellord.c,
	  dlls/shell32/shellpath.c, dlls/shell32/shellstring.c,
	  dlls/shell32/shlfileop.c, dlls/shell32/shlmenu.c,
	  dlls/shell32/systray.c:
	Improve c2man Documented-Total count. Changes:
	- add missing description
	- add missing returns section
	- complete missing A/W pairs
	- reformate comments, to match c2man requirements

2005-11-10  Francois Gouget <fgouget@free.fr>

	* dlls/dxerr8/errors.dat, dlls/dxerr8/errors.h, dlls/dxerr9/errors.dat,
	  dlls/dxerr9/errors.h:
	Assorted spelling fixes in the DXErr8/9 error files.

2005-11-10  Francois Gouget <fgouget@free.fr>

	* dlls/dxerr8/errors.awk, dlls/dxerr9/errors.awk:
	Remove extra backslash that was causing an awk warning.

2005-11-10  Mike McCormack <mike@codeweavers.com>

	* programs/clock/Ko.rc, programs/clock/rsrc.rc, programs/regedit/Ko.rc,
	  programs/regedit/rsrc.rc:
	Added Korean resources.

2005-11-10  Mike McCormack <mike@codeweavers.com>

	* programs/start/start.c:
	Remove the limit on the length of the command line.

2005-11-10  Aric Stewart <aric@codeweavers.com>

	* dlls/msi/msi.c:
	Use MsiDecomposeDescriptorW in MsiProvideQualifiedComponentExW.

2005-11-10  Markus Amsler <markus.amsler@oribi.org>

	* dlls/uxtheme/system.c:
	Improve c2man Documented-Total count. Changes:
	- add missing returns section

2005-11-10  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/x11drv/init.c, include/wingdi.h:
	Added support for SHADEBLENDCAPS.

2005-11-10  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	Define GL_EXT_framebuffer_object and GL_EXT_pixelbuffer_object openGL
	specs.
	Support Mesa GL_VERSION on parse.

2005-11-10  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/urlmon/umon.c, dlls/urlmon/urlmon.spec, include/urlmon.idl:
	Added URLDownloadToCacheFile[AW] stub.

2005-11-10  Mike Hearn <mike@plan99.net>

	* dlls/wininet/version.rc:
	Update wininet version info.

2005-11-09  Alexandre Julliard <julliard@winehq.org>

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

----------------------------------------------------------------
2005-11-09  Huw Davies <huw@codeweavers.com>

	* dlls/wineps/ps.c:
	Escape non-printable characters in the document title and also
	truncate it to 0x80 characters.

2005-11-09  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/commdlg/Makefile.in, dlls/commdlg/filedlg.c:
	Initialize COM prior to displaying the file dialog.

2005-11-09  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/registry.c, dlls/msi/tests/db.c:
	Fix passing of NULL pointers to MsiDecomposeDescriptor and add a
	test.

2005-11-09  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	Make sure we only CoUninitialize after successfully initializing.
	Fix the address of the returned IShellLinkDataList interface.

2005-11-09  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/urlmon/file.c:
	Added IInternetPriority implementation to FileProtocol.

2005-11-09  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/user/cursoricon.c:
	If a color bitmap is provided, store bitmap information from it
	instead of the mask bitmap one.

2005-11-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/tests/msg.c, dlls/x11drv/winpos.c:
	Don't call SetWindowPos in ShowWindow if a parent window is not
	visible, only toggle the WS_VISIBLE flag.

2005-11-09  Markus Amsler <markus.amsler@oribi.org>

	* dlls/user/class.c, dlls/user/cursoricon.c, dlls/user/dde_misc.c,
	  dlls/user/defwnd.c, dlls/user/menu.c, dlls/user/message.c,
	  dlls/user/misc.c, dlls/user/resource.c, dlls/user/scroll.c,
	  dlls/user/win.c, dlls/user/winproc.c:
	Improve c2man Documented-Total count. Changes:
	- add missing description
	- add missing returns section
	- complete missing A/W pairs
	- reformate comments, to match c2man requirements

2005-11-09  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	- Cleanup formating of DispCallFunc.
	- Fix DispCallFunc for functions with return values.
	- Don't rely on _copy_arg as it is going away soon.

2005-11-09  Markus Amsler <markus.amsler@oribi.org>

	* dlls/ntdll/error.c, dlls/ntdll/reg.c, dlls/ntdll/sec.c,
	  dlls/ntdll/string.c, dlls/ole32/clipboard.c,
	  dlls/ole32/memlockbytes16.c, dlls/ole32/ole16.c, dlls/ole32/ole2.c,
	  dlls/ole32/storage.c, dlls/ole32/storage32.c:
	Improve c2man Documented-Total count.

2005-11-09  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/brsfolder.c:
	Initialize COM prior to displaying the SHBrowseForFolder dialog.

2005-11-09  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/shell32/tests/shlfolder.c:
	Disable code that segfaults on Win98 SE.

2005-11-09  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/ole16.c,
	  dlls/ole32/ole2.c, dlls/ole32/rpc.c:
	- Extend COM_OpenKeyForCLSID to open a subkey and return an HRESULT.
	- Fix up the callers and reorganize CoGetClassObject to split out the
	inproc code into another function.

2005-11-09  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/urlmon/http.c, dlls/urlmon/tests/protocol.c:
	Added implementation of IInternetPriority in HttpProtocol.

2005-11-08  Alexandre Julliard <julliard@winehq.org>

	* include/xmldom.idl:
	Fixed typo: get_doctype returns an IXMLDOMDocumentType.

2005-11-08  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/element.c, dlls/msxml3/factory.c,
	  dlls/msxml3/main.c, dlls/msxml3/msxml_private.h, dlls/msxml3/node.c,
	  dlls/msxml3/nodelist.c, dlls/msxml3/nodemap.c,
	  dlls/msxml3/parseerror.c, dlls/msxml3/tests/domdoc.c:
	Include msxml2.h rather than msxml.h and xmldom.h.

2005-11-08  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/sysparams.c, dlls/user/tests/sysparams.c:
	Re-enable SPI_{GET,SET}BORDER tests and fix the bugs that caused them
	to be disabled.
	Add tests that show that the border value manipulated by
	SPI_{GET,SET}BORDER is completely the same as with
	SPI_{GET,SET}NONCLIENTMETRICS.
	Fix a few signed/unsigned warnings in unrelated tests from the same
	source file.
	Made the tests pass on wine.

2005-11-08  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/advapi32/tests/crypt.c:
	Win98 fails another way when user isn't logged in.

2005-11-08  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/shell32/systray.c:
	Unicodify systray.c.

2005-11-08  Alexandre Julliard <julliard@winehq.org>

	* include/windef.h:
	Add an argument to all uses of the __ONLY_IN_WINELIB macro (spotted by
	Berend Reitsma).

2005-11-08  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/shdocvw_main.c, dlls/shdocvw/shlinstobj.c,
	  dlls/shdocvw/tests/shortcut.c:
	Support for shell instance objects.
	Removed a wine_todo for a no longer failing test.
	Added a test for IPersistFolder3::GetCurFolder.

2005-11-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/mapi32/tests/prop.c:
	Get rid of FAR keywords.

2005-11-08  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	Implement selectSingleNode.

2005-11-08  Robert Lunnon <bobl@optushome.com.au>

	* dlls/kernel/heap.c:
	Implement GlobalMemoryStatusEx for Solaris.

2005-11-08  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/kernel/tests/heap.c:
	Take into account some alignment done by HeapAlloc() on Win9x.

2005-11-08  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/wininet/internet.c:
	Unicodify InternetCheckConnection.
	Use HeapAlloc'ed buffers where applicable.

2005-11-08  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/shell32/systray.c:
	Move functions a bit to get rid of a static declaration.

2005-11-08  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/comctl32/treeview.c:
	Do not issue a GetUpdateRect() to query an update region for
	WM_PAINT(wParam=HDC) case. Instead, use GetClientRect() for a bounding
	rect.

2005-11-08  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/Makefile.in, dlls/msxml3/domdoc.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/parseerror.c,
	  dlls/msxml3/tests/domdoc.c:
	Implement get_parseError.

2005-11-08  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/gdi/font.c, dlls/hhctrl.ocx/hhctrl.c:
	Correct some allocated buffer lengths while converting to Unicode.

2005-11-08  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/comctl32/animate.c, dlls/comctl32/datetime.c,
	  dlls/comctl32/header.c, dlls/comctl32/hotkey.c,
	  dlls/comctl32/monthcal.c, dlls/comctl32/pager.c,
	  dlls/comctl32/progress.c, dlls/comctl32/propsheet.c,
	  dlls/comctl32/rebar.c, dlls/comctl32/status.c,
	  dlls/comctl32/syslink.c, dlls/comctl32/tab.c,
	  dlls/comctl32/toolbar.c, dlls/comctl32/tooltips.c,
	  dlls/comctl32/trackbar.c, dlls/comctl32/treeview.c,
	  dlls/comctl32/updown.c, dlls/user/button.c, dlls/user/edit.c,
	  dlls/user/listbox.c, dlls/user/static.c:
	Handle WM_PRINTCLIENT.
	Don't use SelectClipRgn in WM_PRINTCLIENT.

2005-11-08  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/wined3d/directx.c:
	Fix parsing of version number.

2005-11-08  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/element.c, dlls/msxml3/node.c,
	  dlls/msxml3/nodelist.c, dlls/msxml3/nodemap.c:
	Fix cut-n-paste error in licence text.

2005-11-08  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/d3d9/query.c:
	Allow NULL ppQuery to be passed to CreateQuery.

2005-11-08  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/tests/advpack.c:
	Implement TranslateInfString with tests.

2005-11-08  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/ole32/compobj.c:
	Added tracing to CoCreateInstance.

2005-11-08  Markus Amsler <markus.amsler@oribi.org>

	* dlls/kernel/comm.c, dlls/kernel/computername.c, dlls/kernel/console.c,
	  dlls/kernel/environ.c, dlls/kernel/file.c, dlls/kernel/file16.c,
	  dlls/kernel/global16.c, dlls/kernel/heap.c, dlls/kernel/locale.c,
	  dlls/kernel/module.c, dlls/kernel/path.c, dlls/kernel/string.c,
	  dlls/kernel/sync.c, dlls/kernel/thread.c, dlls/kernel/thunk.c,
	  dlls/kernel/time.c, dlls/kernel/virtual.c, dlls/kernel/volume.c:
	Improve c2man Documented-Total count. Changes:
	- add missing description
	- add missing returns section
	- complete missing A/W pairs
	- reformate comments, to match c2man requirements

2005-11-08  Mike McCormack <mike@codeweavers.com>

	* dlls/ntdll/time.c:
	Add some missing timezones.

2005-11-08  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/dxdiagn/Makefile.in, dlls/dxdiagn/provider.c:
	- fill DirectShowFilters Container
	- fix some MLKs (clear variants)

2005-11-08  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/crypt32/tests/cert.c:
	Make Crypt32 tests loadable on Win98.

2005-11-08  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/winsock/tests/sock.c:
	Added last error code for XP SP1.

2005-11-08  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/dmloader/loader.c:
	Add some checks and fix some stream leaks.

2005-11-08  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/rpc.c:
	We shouldn't pass the application name into CreateProcess because the
	value stored in the registry could include arguments.

2005-11-08  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/swapchain.c:
	Fixed an error in Swapchain_GetFrontBufferData.

2005-11-08  Mike McCormack <mike@codeweavers.com>

	* programs/winemenubuilder/winemenubuilder.c:
	Extract the executable name for msi advertised shortcuts.

2005-11-08  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shelllink.c:
	Fix a problem spotted by Dmitry and another one stopping correctly
	formatted lnk files from being generated.

2005-11-07  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/shlwapi/reg.c, dlls/shlwapi/shlwapi.spec:
	Semi-stub implementation for SHRegGetValue(A|W).

2005-11-07  James Hawkins <truiken@gmail.com>

	* include/winerror.h:
	Define the setupapi hresult errors.

2005-11-07  Peter Lemenkov <petro@mail.ru>

	* include/wininet.h:
	Added some missing definitions in wininet.h.

2005-11-07  Huw Davies <huw@codeweavers.com>

	* include/xmldom.idl, include/xmldomdid.h:
	Add IXMLDOMParseError.

2005-11-07  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/brsfolder.c:
	More robust code for querying ShellFolder attributes (some
	ShellFolders ignore the flag mask in GetAttributesOf).

2005-11-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/setupapi/parser.c, dlls/setupapi/tests/.cvsignore,
	  dlls/setupapi/tests/Makefile.in, dlls/setupapi/tests/parser.c:
	Added a bunch of tests for the INF parser.

2005-11-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/enhmfdrv/graphics.c, dlls/gdi/font.c, dlls/gdi/gdi_private.h,
	  dlls/gdi/path.c, dlls/gdi/tests/metafile.c:
	First draft of ExtTextOut on an open path.

2005-11-07  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/dxdiagn/Makefile.in, dlls/dxdiagn/container.c,
	  dlls/dxdiagn/provider.c:
	- bug fixes on AddProp, AddContainer (stupid buffer overflows)
	- more complete container hierarchy
	- DXDiag_AddFileDescContainer service to fill dll info
	- almost complete DXDiag_InitDXDiagDirectXFilesContainer (for now)

2005-11-07  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/sysparams.c:
	Make SystemParametersInfoA( SPI_SETNONCLIENTMETRICS, ...) work by
	adding the needed non client metrics A->W conversions.

2005-11-07  Stefan Huehner <stefan@huehner.org>

	* dlls/secur32/secur32.c:
	Fix segfault when querying non-existent SecurityProvider.

2005-11-07  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/amstream/Makefile.in, dlls/amstream/amstream.c,
	  dlls/amstream/amstream_private.h, dlls/amstream/mediastream.c:
	Add stub implementation of IMediaStream interface.

2005-11-07  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/atl/atl.spec, dlls/atl/atl_main.c:
	AtlAxWinInit dummy implementation.

2005-11-07  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/ntdll/ntdll.spec, dlls/ntdll/rtlstr.c, include/winternl.h:
	Implement RtlInitAnsiStringEx.

2005-11-07  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/drawprim.c:
	Verify that the texture coordinate used in DrawStridedSlow is in range
	before trying to referencing the associated data.

2005-11-07  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c:
	Prevent SetFVF from clearing down the vertex declaration of the FVF is
	zero. This is required for Prince of Persia, The sands of time.

2005-11-07  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/resource.c:
	LdrAccessResource should pop 16 bytes off the stack since it is a
	WINAPI function.

2005-11-07  Marcus Meissner <marcus@jet.franken.de>

	* dlls/oleaut32/olepicture.c, dlls/oleaut32/tests/olepicture.c:
	Added support of loading of IPicture data from non-statable
	IStreams. Added testcases for this.

2005-11-07  James Hawkins <truiken@gmail.com>

	* dlls/hhctrl.ocx/hhctrl.c:
	Free an alloc'ed string.

2005-11-07  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/user/cursoricon.c:
	When creating black & white cursor icon, handle special case where
	hbmColor is null and hbmMask specify a bitmap having twice the height
	and formatted so the upper half is the icon AND bitmask and the lower
	one is the OR bitmask.

2005-11-07  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/d3d8/d3dcore_gl.h:
	Remove already included headers.

2005-11-05  Markus Amsler <markus.amsler@oribi.org>

	* dlls/gdi/driver.c, dlls/gdi/enhmetafile.c, dlls/gdi/font.c,
	  dlls/gdi/metafile.c, dlls/gdi/mfdrv/init.c, dlls/gdi/painting.c,
	  dlls/gdi/palette.c, dlls/gdi/path.c:
	Improve c2man Documented-Total count.

2005-11-05  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c, dlls/shell32/tests/shlfolder.c:
	- Move target folder initialization to a dedicated function.
	- Use this function in BindToObject (should be faster).
	- Special handling for FolderShortcut objects in Initialize method.
	- Removed a todo_wine from a no longer failing unit test.

2005-11-05  Davin McCall <davmac@davmac.org>

	* dlls/winmm/winealsa/audio.c:
	Avoid getting ahead of dsound mixer when using non-hw device. Also
	avoid using internal ALSA call to retrieve hardware play position.

2005-11-05  Kevin Koltzau <kevin@plop.org>

	* dlls/ntdll/thread.c:
	x86_64 references a named union, ensure unions are not nameless.

2005-11-05  Henning Gerhardt <henning.gerhardt@web.de>

	* dlls/commdlg/cdlg_De.rc:
	Update German resource file.

2005-11-05  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/winsock/socket.c, dlls/winsock/tests/sock.c:
	- Stricten cases for NT in a two tests.
	- WSAAddressToString[AW] don't fail on Win9x for those.
	- Modify it to pass new tests.

2005-11-05  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/msi/tests/db.c:
	Win9x returns MSIDBERROR_NOERROR.

2005-11-05  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/node.c, dlls/msxml3/nodelist.c, dlls/msxml3/tests/domdoc.c:
	Filter out CTEXT nodes when building element child lists.
	get_item and get_length should honour the filter.
	Add some '\n's to the tests so that libxml2 lists CTEXT nodes.

2005-11-05  Dimi Paun <dimi@lattica.com>

	* dlls/comctl32/listview.c:
	Validate the column index passed in by the caller.

2005-11-05  Marcus Meissner <marcus@jet.franken.de>

	* dlls/oleaut32/varformat.c:
	Fixed FMT_DATE_GENERAL and FMT_DATE_TIME_SYS cases in
	VARIANT_FormatDate.

2005-11-04  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c:
	Tidy up UpdateTexture and add support for updating cube textures.

2005-11-04  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/win16.api, tools/winapi/win32.api:
	Update win16.api and win32.api.

2005-11-04  Markus Amsler <markus.amsler@oribi.org>

	* dlls/advapi32/advapi.c, dlls/advapi32/crypt.c, dlls/advapi32/eventlog.c,
	  dlls/advapi32/registry.c, dlls/advapi32/security.c,
	  dlls/advapi32/service.c:
	Improve c2man Documented-Total count.

2005-11-04  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/kernel/except.c:
	More verbose output when unhandled exception occurs.

2005-11-04  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shelllink.c, dlls/shell32/tests/shelllink.c:
	Partially implement and test the shelllink object's
	IShellLinkDataList::CopyDataBlock and GetFlags methods.

2005-11-04  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/winapi_parser.pm:
	volatile is legal (and used now!) in a typedef struct {}.

2005-11-04  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/dbghelp/source.c, include/dbghelp.h, include/imagehlp.h,
	  tools/winapi/win32.api:
	Fix typo: PSYM_ENUMSOURCEFILES_CALLBACK instead of
	PSYM_ENUMSOURCFILES_CALLBACK.

2005-11-04  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/advapi32/tests/registry.c:
	- RegConnectRegistryA fails on Win9x when Remote Registry Service is
	not installed (WinReg.DLL is missing).
	- Test "\\" prefixed computer names too.

2005-11-04  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shelllink.c:
	Use advapi32.CommandLineFromMsiDescriptor to get msi component paths.

2005-11-04  Mike McCormack <mike@codeweavers.com>

	* dlls/advapi32/advapi.c, dlls/advapi32/advapi32.spec:
	Implement advapi32.CommandLineFromMsiDescriptor. It's a wrapper for
	msi.MsiProvideComponentFromDescriptor.

2005-11-04  James Hawkins <truiken@gmail.com>

	* dlls/hhctrl.ocx/hhctrl.c:
	Pass HtmlHelp commands to doWinMain.

2005-11-04  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/comctl32/string.c:
	Move functions in comctl32/string.c to remove function declaration.

2005-11-04  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/winapi_function.pm, tools/winapi/winapi_local.pm,
	  tools/winapi/winapi_parser.pm:
	__RPC_STUB is a calling convention as well (#defined as __stdcall).

2005-11-04  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* include/wine/port.h:
	Fix warning about memmove re#definition.

2005-11-04  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/winsock/tests/sock.c:
	Make 4 WSAStringToAddress* tests don't fail on Win9x.

2005-11-04  Marcus Meissner <marcus@jet.franken.de>

	* dlls/oleaut32/tmarshal.c:
	Added support for VT_I8/VT_UI8 marshalling.

2005-11-04  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c:
	Add support for updating to D3DFMT_UNKNOWN surfaces and tidy up update
	surface a little.

2005-11-04  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/olefont.c:
	Add a test for Invoking an OleFont function.

2005-11-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/setupapi/install.c:
	Added support for optional section.ntx86 and section.nt in
	InstallHinfSection when current version is set to NT.

2005-11-03  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/defaulthandler.c:
	Implement OLE object notifications, making sure to cope with the case
	of the advise holder not being created because no notifications are
	needed.

2005-11-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/wine.inf:
	Get rid of a double backslash.

2005-11-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/string.c:
	Use Win32 APIs for string comparison.

2005-11-03  Vijay Kiran Kamuju <infyquest@gmail.com>

	* programs/winecfg/audio.c:
	Show detected audio drivers in autodetect.

2005-11-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/x11drv/winpos.c:
	Stricter check whether a window needs to be mapped on the screen.

2005-11-03  Kieran Clancy <n0dalus+wine@gmail.com>

	* dlls/ntdll/time.c:
	Added another CST (Australian Central Daylight Time) to TZ_INFO.

2005-11-03  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/oleaut32/tests/vartype.c, dlls/oleaut32/variant.c:
	Extend VarCmp() and add test cases.

2005-11-03  Kevin Koltzau <kevin@plop.org>

	* dlls/msvcrt/msvcrt.h, dlls/msvcrt/process.c, dlls/msvcrt/string.c,
	  dlls/msvcrt/tests/headers.c, dlls/msvcrt/thread.c,
	  include/msvcrt/process.h, include/msvcrt/stddef.h:
	Fix warnings and errors in 64bit.

2005-11-03  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	Replaced tabs with spaces.

2005-11-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/commdlg/cdlg.h, dlls/commdlg/cdlg_Bg.rc, dlls/commdlg/cdlg_Cn.rc,
	  dlls/commdlg/cdlg_De.rc, dlls/commdlg/cdlg_En.rc,
	  dlls/commdlg/cdlg_Es.rc, dlls/commdlg/cdlg_Fi.rc,
	  dlls/commdlg/cdlg_Fr.rc, dlls/commdlg/cdlg_It.rc,
	  dlls/commdlg/cdlg_Nl.rc, dlls/commdlg/cdlg_No.rc,
	  dlls/commdlg/cdlg_Pl.rc, dlls/commdlg/cdlg_Pt.rc,
	  dlls/commdlg/cdlg_Ru.rc, dlls/commdlg/cdlg_Si.rc,
	  dlls/commdlg/cdlg_Sk.rc, dlls/commdlg/cdlg_Sv.rc,
	  dlls/commdlg/cdlg_Th.rc, dlls/commdlg/cdlg_Uk.rc,
	  dlls/commdlg/printdlg.c:
	Authors: Vijay Kiran Kamuju <infyquest@gmail.com>, Jonathan Ernst <Jonathan@ErnstFamily.ch>
	Display an error if no printer is installed.

2005-11-03  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msvcrt/.cvsignore, dlls/msvcrt/Makefile.in, dlls/msvcrt/rsrc.rc:
	Specify a DLL version for msvcrt.dll.

2005-11-03  Stefan Huehner <stefan@huehner.org>

	* dlls/msxml3/nodelist.c, dlls/msxml3/nodemap.c,
	  dlls/msxml3/tests/domdoc.c:
	Add indexed access to attributes (nodemap) and childNodes
	(nodelist), with some testcases.

2005-11-03  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/tests/shlfolder.c:
	Added some more unit tests for FolderShortcut objects.

2005-11-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/comm.c:
	Fixed fd leaks (spotted by Cihan Altinay).

2005-11-03  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/msi/action.c, dlls/msi/appsearch.c, dlls/msi/msi.c,
	  dlls/version/info.c, dlls/version/install.c, dlls/version/ver16.c,
	  include/winver.h:
	Fix some wrong prototypes.

2005-11-03  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/dxdiagn/container.c, dlls/dxdiagn/provider.c:
	Fill provider with some empty containers.

2005-11-03  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shlexec.c, dlls/shell32/tests/shlexec.c:
	Invoke shortcuts through IContextMenu, rather than trying to access
	them directly.

2005-11-03  Mike McCormack <mike@codeweavers.com>

	* tools/wine.inf:
	Add the ContextMenuHandlers key for shortcuts so the new context menu
	code can work.

2005-11-03  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/editor.c, dlls/riched20/editstr.h, dlls/riched20/paint.c:
	Cache background color brush instead of recreating it at each screen
	update.

2005-11-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/break.c:
	Fixed 'break NN' command (using dbghelp.SymEnumLines).

2005-11-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/wineconsole/dialog.c, programs/wineconsole/winecon_private.h,
	  programs/wineconsole/wineconsole.c:
	Fixed wineconsole startup when restoring registry settings.

2005-11-03  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/classes.c, dlls/msi/files.c,
	  dlls/msi/helpers.c:
	Remove some redundant null pointer checks.

2005-11-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/shfldr_unixfs.c, dlls/shell32/shlfolder.c,
	  dlls/shell32/tests/shlfolder.c:
	Authors: Vitaliy Margolen <wine-patch@kievinfo.com>, Michael Jung <mjung@iss.tu-darmstadt.de>
	Set all capability flags supported by the shellfolder, disregarding
	the flag mask given to GetAttributesOf.
	Unit tests to demonstrate this behaviour.

2005-11-03  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/cond.y:
	Add missing semicolons that caused compile trouble on FreeBSD.

2005-11-03  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shelllink.c:
	Pass the correct verb.
	Add a space between extra parameters.
	Wait for ShellExecute to complete.

2005-11-03  Steven Edwards <winehacker@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec:
	Add a real stub for Advpack.extract.

2005-11-03  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/thread.c:
	Get rid of CPU id when copying context

2005-11-03  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/drawprim.c,
	  dlls/d3d8/vshaderdeclaration.c:
	- defined D3DCOLOR_B macros to access byte values of D3DCOLOR
	- use D3DCOLOR macros instead of using shift + masks
	- fix a bug where diffuse.lpData checked instead of specular.lpData
	- implement color fixup on ARB VShader compilation code:
	->  on input parameters using swizzle
	-> add is_color parameter on vshader_program_add_param

2005-11-03  Hans Leidekker <hans@it.vu.nl>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/service.c:
	Added stub for RegisterServiceCtrlHandlerEx{A,W}.

2005-11-03  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h,
	  dlls/riched20/paint.c, dlls/riched20/wrap.c:
	Added support for EM_REQUESTRESIZE message, EN_REQUESTRESIZE
	notification, and ENM_REQUESTRESIZE event mask.

2005-11-03  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/scroll.c:
	Scroll bar: Keep the caret blinking during scroll operations (only
	handle WM_SYSTIMER messages that belong to the scroll bar).

2005-11-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/dbghelp_private.h,
	  dlls/dbghelp/source.c, dlls/dbghelp/symbol.c, include/dbghelp.h:
	Implemented SymEnumLines.

2005-11-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/wineconsole/dialog.c, programs/wineconsole/user.c,
	  programs/wineconsole/winecon_user.h:
	Now filling external leading in font cells.

2005-11-02  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	Don't call Release on a null ptr.

2005-11-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/tests/thread.c, dlls/ntdll/exception.c,
	  dlls/ntdll/ntdll_misc.h, dlls/ntdll/signal_i386.c,
	  dlls/ntdll/signal_powerpc.c, dlls/ntdll/signal_sparc.c,
	  dlls/ntdll/signal_x86_64.c, dlls/ntdll/thread.c,
	  include/wine/server_protocol.h, server/protocol.def, server/thread.c,
	  server/thread.h, server/trace.c:
	Fixed Get/SetThreadContext to work properly on suspended threads.
	Added a test case.

2005-11-02  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/opengl32/wgl.c, dlls/shell32/shelllink.c:
	Correct WINAPI position for MSVC portability.

2005-11-02  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/wineconsole/dialog.c:
	Fixed crash in font browsing for raster fonts.

2005-11-02  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/variant.c:
	Fix a crash during +variant logging caused by a typo causing an array
	to be one element less than expected.

2005-11-02  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  include/wine/wined3d_interface.h:
	Implement D3DFMT_UNKNOWN surfaces, this seems to be used a lot in d3d8
	but I haven't found any d3d9 application that uses D3DFMT_UNKNOWN
	surfaces yet.

2005-11-02  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	- Make sure to clean up properly on error.
	- Restrict the critical section to getting the channel buffer and
	adding a reference to it.

2005-11-02  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	- Make wParamFlags in the paramdesc dumping function human readable.
	- Enums should be VT_I4 instead of VT_INT.
	- Trace the return value from the ITypeInfo_fnInvoke.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/cond.y, dlls/msi/tests/package.c:
	NULL and empty strings are the same in conditions.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/imm32/imm.c:
	Change a FIXME message to a comment.

2005-11-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/tab.c:
	Avoid printing out a possibly uninitialized variable.

2005-11-02  Stefan Huehner <stefan@huehner.org>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	Extend get_nodeName add testcases for it.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c, dlls/msi/msi.spec, include/msi.h:
	Stub implementation for MsiAdvertiseScriptA/W.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/create.c, dlls/msi/delete.c, dlls/msi/distinct.c,
	  dlls/msi/insert.c, dlls/msi/order.c, dlls/msi/record.c,
	  dlls/msi/select.c, dlls/msi/string.c, dlls/msi/table.c,
	  dlls/msi/update.c, dlls/msi/where.c:
	Create the +msidb debug channel for msi database code.

2005-11-02  Aric Stewart <aric@codeweavers.com>

	* dlls/msi/action.c:
	Force files to install if the REINSTALL property is set.

2005-11-02  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/resource.c:
	Make LdrAccessResource call an internal function to satisfy Shrinker.

2005-11-02  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/tests/om.c, server/named_pipe.c:
	Fix error returned when opening nonexistent pipes.

2005-11-02  Alexandre Julliard <julliard@winehq.org>

	* server/context_i386.c, server/context_powerpc.c, server/context_sparc.c,
	  server/context_x86_64.c, server/thread.c, server/thread.h:
	Moved the platform-independent part of the get/set_thread_context
	requests to a common file.

2005-11-02  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	Added some comments to document unixfs.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/install.c, dlls/msi/tests/package.c:
	Fix parameter handling in MsiSetTargetPath, and add a test for it.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/files.c:
	Implement the RemoveFiles action.

2005-11-02  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/ntdll/rtlstr.c:
	Minor fixes to rtl string functions.

2005-11-02  David Kredba <kredba@math.cas.cz>

	* dlls/commdlg/cdlg_Cs.rc, dlls/devenum/devenum.rc, dlls/hhctrl.ocx/Cs.rc,
	  dlls/hhctrl.ocx/hhctrl.rc, dlls/mpr/mpr_Cs.rc:
	Czech resources update.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c, dlls/msi/msi.spec, include/msi.h:
	Stub implementation for MsiGetFileHashA/W.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/files.c:
	Use an enumeration for file states.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	Define NONAMELESSUNION and NONAMELESSSTRUCT for older compilers.

2005-11-02  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/comctl32/listview.c:
	Clear bLButtonDown flags if mouse is not down.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/riched20/reader.c, dlls/riched20/rtf.h:
	Convert all RTFPanic and RTFMsg calls to ERR calls.

2005-11-02  Rob Shearman <rob@codeweavers.com>

	* include/rpcndr.h:
	Add declarations for NdrAsyncClientCall, NdrAsyncStubCall and
	RpcMgmtEnableIdleCleanup.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* tools/winedump/lnk.c:
	Handle msi component identifiers without a feature guid.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msxml3/node.c:
	Implement IXMLDOMNode::get_nodeName.

2005-11-02  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/oleaut.c:
	The PSDispatch PS class factory can manage both typelib marshalled and
	IDispatch, which is NDR marshalled, so we need a wrapper to call the
	appropriate CreateProxy or CreateStub function.

2005-11-02  Lionel Ulmer <lionel.ulmer@free.fr>

	* dlls/x11drv/settings.c, include/winuser.h:
	Add 'ENUM_...._SETTINGS' flag and make use of it in the X11DRV code.

2005-11-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/except.c, dlls/ntdll/exception.c,
	  include/wine/server_protocol.h, server/debugger.c,
	  server/protocol.def, server/thread.c:
	Don't send an extra signal when waiting for a debug event, just do a
	normal wait.  Return the debug event status directly as return value
	of the server call.

2005-11-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/thread.c, server/context_i386.c, server/context_powerpc.c,
	  server/context_sparc.c, server/context_x86_64.c:
	Don't send the incoming context to the server for get_thread_context,
	instead copy only the relevant fields of the return value on the
	client side.

2005-11-01  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/tests/om.c, server/named_pipe.c:
	Fix error returned when exceeding allowed instances.

2005-11-01  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/comctl32/string.c:
	Include config.h and port.h for strncasecmp() in MSVC port.

2005-11-01  Bernd Schmidt <bernds_cb1@t-online.de>

	* dlls/kernel/file.c:
	Implemented FindExSearchLimitToDirectories.

2005-11-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/msvcrt.spec:
	Fixed _wstrdate/_wstrtime parameters.

2005-11-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/wininet/http.c:
	Authors: Marcus Meissner <marcus@jet.franken.de>, Walter Weiss <wjweiss@hotmail.com>
	Added handling of more HTTP standard headers and binary search lists.

2005-11-01  Marcus Meissner <marcus@jet.franken.de>

	* dlls/oleaut32/tests/vartype.c:
	SysReAllocString of same pointer returns TRUE.

2005-11-01  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	Fixed crash in unixfs shellfolder handling with winamp.

2005-11-01  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/amstream/amstream.c, dlls/amstream/main.c:
	Use a more standard indentation style.

2005-11-01  Vitaliy Margolen <wine-patch@kievinfo.com>

	* tools/wine.inf:
	Remove version information.

2005-11-01  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/x11drv/clipboard.c:
	Improve handling of mapping between X and Windows formats.
	Add support for UTF8.

2005-11-01  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/tests/om.c, server/main.c, server/object.c, server/object.h,
	  server/winstation.c:
	- Use OBJ_CASE_INSENSITIVE in object lookup.
	- Remove case_sensitive flag from namespace.
	- Remove todo_wine from now succeeding tests.

2005-11-01  Davin McCall <davmac@davmac.org>

	* dlls/dsound/mixer.c:
	PhaseCancel subtracts secondary buffer from primary buffer, not the
	other way around.

2005-11-01  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/painting.c:
	ScrollWindowEx: Don't move the caret of child windows and hide it only
	if it's in the source or in the destination rectangle.

2005-11-01  Robert Shearman <rob@codeweavers.com>

	* dlls/shell32/shfldr.h, dlls/shell32/shfldr_desktop.c,
	  dlls/shell32/shfldr_fs.c, dlls/shell32/shlfolder.c:
	Convert SHELL32_BindToChild to Unicode and fix up the callers.

2005-11-01  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/exception.c, dlls/ntdll/signal_i386.c:
	Make the call exception handler function more compatible with NT and
	with what Shrinker expects.

2005-10-31  Stefan Huehner <stefan@huehner.org>

	* programs/winetest/Makefile.in:
	Add msxml3,setupapi tests to winetest.

2005-10-31  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, programs/Makefile.in,
	  programs/eject/.cvsignore, programs/eject/Makefile.in,
	  programs/eject/eject.c:
	Added an 'eject' Winelib app that allows unmounting and ejecting a CD
	even if a Windows app has files open on it.

2005-10-31  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	Marshal enums.

2005-10-31  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/element.c, dlls/msxml3/node.c,
	  dlls/msxml3/nodelist.c, dlls/msxml3/nodemap.c:
	Actually print the IIDs.

2005-10-31  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/enhmetafile.c, include/wingdi.h:
	Implement playback of EMR_ALPHABLEND.

2005-10-31  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/freetype.c:
	Only select a bitmap font as a last resort if we can't find a font
	with the correct facename.

2005-10-31  Marcus Meissner <marcus@jet.franken.de>

	* server/mapping.c:
	Do not overflow the stackbased "nt" struct when reading non-conforming
	PE files.

2005-10-31  Alexandre Julliard <julliard@winehq.org>

	* DEVELOPERS-HINTS, configure, configure.ac, dlls/Makefile.in,
	  dlls/ttydrv/.cvsignore, dlls/ttydrv/Makefile.in,
	  dlls/ttydrv/bitmap.c, dlls/ttydrv/dc.c, dlls/ttydrv/graphics.c,
	  dlls/ttydrv/objects.c, dlls/ttydrv/palette.c, dlls/ttydrv/ttydrv.h,
	  dlls/ttydrv/ttydrv_main.c, dlls/ttydrv/winetty.drv.spec,
	  dlls/ttydrv/wnd.c:
	Get rid of the no longer used tty driver.

2005-10-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/driver.c:
	Default to the null driver instead of dying if the specified display
	driver couldn't be loaded.

2005-10-31  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/painting.c, dlls/user/tests/msg.c:
	Add the tests for behaviour of [In]validateRect and [In]validateRgn
	with hwnd set to 0, make them pass under Wine.

2005-10-31  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shdocvw/shdocvw_main.c:
	Only return SHDOCVW_ClassFactory if asked for CLSID_WebBrowser.

2005-10-31  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/usrmarshal.c:
	Deal with pExcepInfo == NULL.

2005-10-31  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	Make sure to unregister all the classes that were registered when msi
	is unloaded, so we can register again cleanly.

2005-10-31  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/tests/shlexec.c:
	Add void to empty declaration list.

2005-10-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi/dc.c, dlls/gdi/driver.c:
	Default to an empty driver instead of dying if the specified display
	driver couldn't be loaded.

2005-10-31  Michael Jung <mjung@iss.tu-darmstadt.de>

	* configure, configure.ac, dlls/shdocvw/Makefile.in,
	  dlls/shdocvw/tests/.cvsignore, dlls/shdocvw/tests/Makefile.in,
	  dlls/shdocvw/tests/shortcut.c:
	Added initial tests for shdocvw's FolderShortcut related
	functionality.

2005-10-31  Marcus Meissner <meissner@suse.de>

	* dlls/ntdll/exception.c, dlls/ntdll/signal_i386.c:
	Added assembly implementation of EXC_CallHandler.

2005-10-31  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/install.c, dlls/msi/msipriv.h, dlls/msi/package.c,
	  dlls/msi/tests/package.c:
	Fix and test MsiGetProperty and MsiSetProperty.

2005-10-31  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c, dlls/msi/tests/.cvsignore, dlls/msi/tests/Makefile.in,
	  dlls/msi/tests/msi.c:
	Improve MsiUseFeatureEx and MsiGetFeatureState a little, add some
	simple test cases.

2005-10-31  James Hawkins <truiken@gmail.com>

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	Implement InternetCreateUrlW and test cases.

2005-10-31  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/dc.c, dlls/gdi/enhmfdrv/dc.c, dlls/gdi/enhmfdrv/init.c,
	  dlls/gdi/tests/.cvsignore, dlls/gdi/tests/Makefile.in,
	  dlls/gdi/tests/dc.c, dlls/gdi/tests/metafile.c:
	Fix handling of relative state indices in RestoreDC.
	Fix return value of SaveDC when writing to an emf.
	Before writing the EMR_EOF record we should ensure that we clear the
	state stack.

2005-10-31  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/ddraw/direct3d_opengl.c, dlls/ddraw/light.c,
	  dlls/ddraw/opengl_private.h:
	Finish moving d3d[1..3] light code to use d3d7.

2005-10-31  Marcus Meissner <meissner@suse.de>

	* dlls/kernel/time.c:
	Define obsoleted CLK_TCK to CLOCKS_PER_SEC if not there.

2005-10-31  Hans Leidekker <hans@it.vu.nl>

	* dlls/odbccp32/odbccp32.c:
	Improve the implementation of SQLConfigDataSource, SQLConfigDriver,
	SQLInstallDriver{,Ex}, SQLInstallerError and
	SQLInstallTranslator{,Ex}.

2005-10-31  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/tests/cert.c:
	Implement CertSignSignature and CertVerifySignature(Ex).

2005-10-31  Robert Reif <reif@earthlink.net>

	* dlls/winmm/tests/wave.c:
	Add waveOutPause/waveOutRestart test.
	Tighten up play duration test when ending too soon.
	Set VirtualFree size to 0.

2005-10-31  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/shlwapi/tests/path.c:
	Stop PathIsValidCharW tests after 100 failing tests.

2005-10-31  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/d3d9/query.c:
	In case of D3D9 the CreateQuery call can be used to retrieve status  
	information. According to MSDN the 'ppQuery' parameter can be set to
	NULL to detect if a certain query Type is supported.

2005-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	Add a stub for the AllocateRegistrySpace action.

2005-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/database.c, dlls/msi/msi.c,
	  dlls/msi/package.c, include/msiquery.h:
	Define MSIDBOPEN_ constants using LPCWSTR when compiling Wine.

2005-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	Add a read-only implementation of the SelectionTree control.

2005-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/classes.c:
	Simplify register_progid() and remove a fixed length buffer.

2005-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	Handle MaskEdit masks containing dashes and other constant
	characters.

2005-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	Use msi_get_property_int() in a few more places.

2005-10-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/winecrt0/crt0_private.h, dlls/winecrt0/delay_load.c,
	  dlls/winecrt0/dll_entry.c, dlls/winecrt0/dll_main.c,
	  dlls/winecrt0/drv_entry.c, dlls/winecrt0/exe_entry.c,
	  dlls/winecrt0/exe_wentry.c, dlls/winecrt0/init.c,
	  dlls/winecrt0/stub.c, include/winnt.h:
	Make all winecrt0 functions and variables hidden.

2005-10-30  Julien Cegarra <JulienC@psychologie-fr.org>

	* dlls/Makefile.in, dlls/winmm/Makefile.in, dlls/winmm/sound.drv.spec,
	  dlls/winmm/sound.spec:
	Correct name of sound.dll to sound.drv (WIN16).

2005-10-30  Kai Blin <blin@gmx.net>

	* dlls/secur32/Makefile.in, dlls/secur32/dispatcher.c,
	  dlls/secur32/secur32_priv.h:
	A dispatcher for running ntlm_auth.

2005-10-30  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/scroll.c:
	Handle the left and right arrow keys.

2005-10-30  Christian Costa <titan.costa@wanadoo.fr>

	* include/wine/library.h:
	Remove no longer used wine_dbg_parse_options and wine_dbg_add_options
	prototypes.

2005-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/install.c, dlls/msi/msi.spec, include/msiquery.h:
	Add a stub implementation of msi.MsiSetMode.

2005-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/classes.c:
	Remove unused package parameter of register_progid_base().

2005-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/dialog.c, dlls/msi/package.c:
	Use "static const" rather than "const static" as gcc -W complains
	about the former.

2005-10-30  Robert Reif <reif@earthlink.net>

	* dlls/msvcrt/msvcrt.spec, dlls/msvcrt/tests/time.c, dlls/msvcrt/time.c:
	Implement _wstrdate and _wstrtime with tests.

2005-10-30  Peter Beutner <p.beutner@gmx.net>

	* dlls/msvcrt/cppexcept.c:
	Fix exception handling for non CXX_EXCEPTIONs.

2005-10-29  Vitaliy Margolen <wine-patch@kievinfo.com>

	* server/console.c, server/event.c, server/handle.c, server/mailslot.c,
	  server/mapping.c, server/mutex.c, server/named_pipe.c,
	  server/object.c, server/object.h, server/process.c,
	  server/semaphore.c, server/timer.c, server/winstation.c:
	Pass object attributes to create_named_object & find_object.

2005-10-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/atom.c:
	Implemented local/global atom creation, deletion & lookup on top of
	ntdll.

2005-10-29  Juan Lang <juan_lang@yahoo.com>

	* dlls/wldap32/wldap32.spec:
	Export functions by ordinal, cryptnet.dll at least depends on it.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	Don't change the UI level during ExecuteAction.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	Implement MsiGetFeatureUsageA and MsiUseFeature(Ex)A using their W
	versions.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/files.c,
	  dlls/msi/helpers.c:
	Remove the unused 1st parameter of ACTION_VerifyComponentForAction.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	Explicitly check for MSICONDITION_TRUE being returned from
	MsiEvaluateCondition.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/files.c:
	Some installers don't call the CreateFolders action before the
	InstallFiles action as MSDN specifies, but it still seems to work, so
	make sure that we create component directories in the InstallFiles
	action anyway.

2005-10-29  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/comctl32/header.c:
	Unify HEADER_GetItem[A/W] into one function.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/cond.y, dlls/msi/tests/package.c:
	Add a bunch of tests for MsiEvaluateCondition and make them pass.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	Make enter and escape trigger the default and cancel buttons in
	dialogs.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/table.c:
	Deleted two buggy functions that incorrectly and inefficiently check
	whether a row already exists in a table, and replaced them with a call
	to an existing working function that does the same thing correctly.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/files.c:
	Remove an incorrect comment and check for 0 being an invalid file
	handle.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/files.c:
	Extract file directly to their target location, bypassing the need to
	use temporary files and move files.

2005-10-29  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h:
	- Read DLL name from modules in MSFT typelibs.
	- A name offset of -1 for a parameter means that it has the same name
	as the function.
	- Print an error if a ReadName is attempted with an offset of -1,
	since this will read garbage.
	- Implement ITypeInfo_GetDllEntry.

2005-10-29  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	Move the softwareVertexProcessing flag from the stateblock to the
	device because its state shouldn't be recorded in a stateblock.

2005-10-29  Robert Shearman <rob@codeweavers.com>

	* dlls/gdi/dc.c:
	Print an error if a DC is created with a bad device.

2005-10-29  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winecfg/driveui.c:
	Set list view's text directly - don't use fill_drives_list for that.
	Enable "Apply" button when text changes.

2005-10-29  Kevin Koltzau <kevin@plop.org>

	* dlls/msvcrt/console.c:
	Enable line editing for _cgets.

2005-10-29  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/ole32/tests/stg_prop.c:
	Delete some temp files created by the ole32 tests.

2005-10-29  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/msi/action.c:
	Passing NULL as the last two parameters to ReadFile is illegal and
	actually causes a crash on windows. The attached patch fixes this.

2005-10-29  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/urlmon/file.c, dlls/urlmon/tests/protocol.c:
	Report BINDSTATUS_SENDINGREQUEST in FileProtocol::Start.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	Add an implementation for MsiGetShortcutTargetA/W.

2005-10-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c, dlls/ntdll/file.c, dlls/ntdll/ntdll_misc.h:
	Added an implementation of the FSCTL_DISMOUNT_VOLUME ioctl that
	attempts to unmount the Unix device.

2005-10-28  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/ntdll/om.c, include/winternl.h:
	Fix NtQueryDirectoryObject prototype, documentation, and the
	definition of the structure it uses.

2005-10-28  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/dc.c, dlls/gdi/tests/.cvsignore, dlls/gdi/tests/Makefile.in,
	  dlls/gdi/tests/mapping.c:
	xform can be NULL when setting the identity.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/install.c:
	Fix a memory leak.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shelllink.c:
	Handle MSI advertised shortcuts in the shelllink object.

2005-10-28  Henning Gerhardt <henning.gerhardt@web.de>

	* programs/regedit/De.rc:
	Update the German resource file.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/files.c:
	Put the UI update code for cabinet file into a separate function.

2005-10-28  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/version/install.c:
	Correct the way that VerFindFileA checks for a file that is
	exclusively locked.

2005-10-28  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/kernel/tests/thread.c:
	Test CreateThread() for reception of NULL pointer to TID.

2005-10-28  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/user/tests/msg.c:
	Don't pass CreateThread() with a NULL pointer to TID as Win9x does not
	create a thread then.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	Return an error in MsiGetComponentPathW if passed a null component.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/cond.y:
	Fix error handling in MsiEvaluateCondition.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/files.c:
	Translate INVALID_HANDLE_VALUE to zero for cabinet handles.

2005-10-28  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/kernel/tests/console.c:
	Don't send a CTRL_C_EVENT signal to console if we are on Win9x and
	console signal handler is set to NULL.

2005-10-28  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/comctl32/header.c:
	Unify HEADER_InsertItem[A/W] into one function.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/files.c:
	Fix a memory leak in the cabinet extracting code.

2005-10-28  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/encode.c, dlls/crypt32/protectdata.c:
	Use CryptMem functions for internal memory allocation.

2005-10-28  Michael Jung <mjung@iss.tu-darmstadt.de>

	* programs/regedit/De.rc:
	Added German resources for regedit's find dialog.

2005-10-28  James Hawkins <truiken@gmail.com>

	* dlls/wininet/internet.c:
	Correct parameter names for InternetSetFilePointer.

2005-10-28  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/oleaut32/variant.c:
	Handle VT_DECIMAL in VarCmp().

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msvcrt/wcs.c:
	Use the correct buffer - reported by Jesse Allen.

2005-10-28  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/kernel/tests/thread.c:
	Add a test for GetThreadExitCode.
	Use GetModuleHandleA as kernel32 should be present on every system.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shelllink.c:
	Implement IContextMenu::QueryContextMenu and
	IContextMenu::InvokeCommand.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.spec:
	Fix MsiGetPropertyA/W spec declarations.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/files.c:
	Create component folders in the CreateFolders action.

2005-10-28  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winecfg/appdefaults.c:
	Define OS environment variable on WinNT versions.

2005-10-27  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/file.c, dlls/ntdll/sync.c, dlls/ntdll/virtual.c,
	  include/wine/server_protocol.h, server/event.c, server/handle.c,
	  server/handle.h, server/mailslot.c, server/mapping.c, server/mutex.c,
	  server/named_pipe.c, server/protocol.def, server/semaphore.c,
	  server/timer.c, server/trace.c, server/winstation.c:
	- Send whole OBJECT_ATTRIBUTES.Attributes to the server not just an
	inherit flag.
	- Pass DesiredAccess to the server when creating mailslot.

2005-10-27  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/mapi32/tests/Makefile.in, dlls/mapi32/tests/prop.c:
	Allow mapi32 tests to load and exit gracefully if mapi32.dll isn't
	installed.

2005-10-27  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/advapi32/tests/registry.c:
	Delete a temp file.

2005-10-27  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/wininet/internet.c:
	Add default implementation for max_conn_pre_*_server flag.
	Add stubs for the above flags in InternetSetOption.

2005-10-27  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/gdi/clipping.c, dlls/gdi/dc.c, dlls/gdi/enhmfdrv/bitblt.c,
	  dlls/gdi/font.c:
	Fixed SetTextAlign(), SetBkMode(), SetROP2(), SetPolyFillMode(), and
	SetStretchBltMode() to assume that the corresponding DC driver
	functions return only a BOOL success flag, and therefore a proper
	return value should be generated by the main function. Fixed
	EMFDRV_StretchDIBits() to return a proper value (like
	MFDRV_StretchDIBits already does). Added comments about other cases of
	improper return values.

2005-10-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/input.c, dlls/user/listbox.c, dlls/user/message.c,
	  dlls/user/spy.c, include/winuser.h:
	Add some missing USER definitions, add a couple of FIXMEs for not
	implemented features.

2005-10-27  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/custom.c:
	If an action fails, print out its name as well as the error code.  Use
	%d for error codes so it's easy to match them up to something in
	winerror.h.

2005-10-27  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/appsearch.c,
	  dlls/msi/classes.c, dlls/msi/custom.c, dlls/msi/format.c,
	  dlls/msi/helpers.c:
	Rename load_dynamic_stringW to msi_dup_record_field to better describe
	what it does, and replace a few instances with MSI_RecordGetString to
	avoid allocating memory.

2005-10-27  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/tests/msg.c:
	Add test for undocumented 0x4D message sent on F1.

2005-10-27  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/msvcrt/tests/printf.c:
	Added a test case for %0f and %.0f.

2005-10-27  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/database.c, dlls/msi/msipriv.h, dlls/msi/table.c:
	Implement transforms.  This still includes some debugging code which
	can be enabled by setting debug_transform to 1 in the relevant
	places.

2005-10-27  Robert Lunnon <bobl@optushome.com.au>

	* dlls/wineps/init.c:
	Reorder header files to avoid name space collision with symbol
	PAGESIZE.

2005-10-27  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/Makefile.in, dlls/shell32/shfldr_unixfs.c,
	  dlls/shell32/tests/shlfolder.c:
	Implemented UnixFolder's IPersistPropertyBag::Load method.

2005-10-27  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/tests/vartype.c:
	Add tests for functionality implemented or corrected: multiplication,
	division, cast to double, cast to string.

2005-10-27  Robert Shearman <rob@codeweavers.com>

	* include/rpcproxy.h:
	Add the macros used in dlldata.c files.

2005-10-27  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	There is no need to call IUnknown_QueryInterface since getting the
	correct object is handled by the proxy manager.

2005-10-27  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/iconcache.c:
	Remove iconcache pre-initialization hack, it's not necessary any
	more.

2005-10-27  Hans Leidekker <hans@it.vu.nl>

	* tools/wineinstall:
	Wine is beta software now.

2005-10-27  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	Tidy up the RegisterProduct action a little.

2005-10-27  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/d3d8/device.c:
	Release the OpenGL context when the device is released.

2005-10-27  Alexandre Julliard <julliard@winehq.org>

	* programs/winecfg/Bg.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Fi.rc, programs/winecfg/Fr.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Nl.rc,
	  programs/winecfg/No.rc, programs/winecfg/Ru.rc,
	  programs/winecfg/driveui.c, programs/winecfg/resource.h:
	Get rid of the show dir symlink option.

2005-10-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c:
	Make show_dir_symlinks the default and get rid of the option.

2005-10-27  Alexandre Julliard <julliard@winehq.org>

	* server/fd.c:
	Make the unmount_device request take a handle to the device file
	itself instead of a handle to a file opened on the device.

2005-10-27  Robert Reif <reif@earthlink.net>

	* dlls/dxerr8/dxerr8.c, dlls/dxerr8/errors.dat, dlls/dxerr8/errors.h,
	  dlls/dxerr9/dxerr9.c, dlls/dxerr9/errors.dat, dlls/dxerr9/errors.h:
	Added more error codes to dxerr8 and dxerr9 which were extracted from
	MinGW win32api-3.3 file dxerr.c written by Filip Navara <xnavara@volny.cz>.

2005-10-27  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/kernel/tests/process.c:
	Test for argv handling.

2005-10-27  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/ntdll/nt.c, dlls/ntdll/ntdll.spec, include/winternl.h:
	Add stub implementation for NtAccessCheckAndAuditAlarm.

2005-10-27  Stefan Leichter <Stefan.Leichter@camLine.com>

	* include/advpub.h:
	Declare ExecuteCab and TranslateInfString.

2005-10-27  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/main.c,
	  dlls/crypt32/tests/main.c, include/wincrypt.h:
	Implement CryptMem and undocumented I_Crypt*Tls functions, with tests.

2005-10-27  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/vertexshader.c:
	Correct the number of parameters expected for the LRP function.

2005-10-27  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/indexbuffer.c,
	  dlls/d3d8/vertexbuffer.c:
	Changed index and vertex buffer so that internal references are
	counted separately to external ones.

2005-10-27  Jonathan Ernst <Jonathan@ErnstFamily.ch>

	* programs/regedit/Fr.rc:
	Updated French resources.

2005-10-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shell32/shellord.c:
	Correctly handle flags parameter in SHAddToRecentDocs.

2005-10-27  Marcus Meissner <marcus@jet.franken.de>

	* aclocal.m4, configure:
	Print first line of LDD output only.

2005-10-27  Mike McCormack <mike@codeweavers.com>

	* dlls/msvcrt/wcs.c:
	Missing and zero precision specifiers are different.

2005-10-27  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/regsvr.c, include/ocidl.idl:
	Add IFontEventsDisp and IProvideMultipleClassInfo.

2005-10-27  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/comctl32/header.c:
	Unify HEADER_SetItem[A/W] into one function.

2005-10-27  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shelllink.c:
	Add the IObjectWithSite interface.

2005-10-27  Mike McCormack <mike@codeweavers.com>

	* dlls/user/tests/menu.c:
	Add a currently failing test case for menus.

2005-10-27  Robert Reif <reif@earthlink.net>

	* dlls/dsound/dsound_private.h, dlls/dsound/duplex.c:
	Remove unused variable from IDirectSoundFullDuplexImpl.
	Move DirectSoundFullDuplexCreate to get rid of forward declarations.

2005-10-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/file.c:
	In FindNextFileExW don't report directory symlinks that point to one
	of the parent directories, to avoid infinite recursions.

2005-10-26  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/msipriv.h, dlls/msi/msiquery.c,
	  dlls/msi/table.c:
	Create a stub function to apply a single table transform and call it
	where we need to apply transforms.

2005-10-26  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/cstub.c, dlls/rpcrt4/ndr_midl.c, dlls/rpcrt4/rpcrt4.spec,
	  include/rpcproxy.h:
	Stubs for NdrStubForwardingFunction and NdrCStdStubBuffer2_Release
	along with a few related defines.

2005-10-26  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/vartype.c:
	Implement complete VarDecDiv() for any valid DECIMAL.

2005-10-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	Attach to implicitly loaded builtin dlls on process startup.

2005-10-26  Krzysztof Foltman <wdev@foltman.com>

	* programs/regedit/En.rc, programs/regedit/Pl.rc, programs/regedit/edit.c,
	  programs/regedit/framewnd.c, programs/regedit/main.h,
	  programs/regedit/resource.h, programs/regedit/treeview.c:
	- Added Find functions
	- Some refactoring that made Find functions possible
	- GetItemPath returns a heap-allocated string
	- subtree update put into a separate function UpdateExpandingTree
	- error() utility function made public
	- Find functions are grayed/ungrayed based on context (which fixes
	invalid 'grayed' flag in some localizations).
	- InvalidateRect to fix display glitches coming from using
	WM_SETREDRAW.
	- English and Polish resource updates (Find dialog box and Find menu
	options, string not found message).

2005-10-26  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	Treat paramflags == 0 like PARAMFLAG_FIN.

2005-10-26  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/vartype.c:
	Implement complete VarDecMul() for any valid DECIMAL.

2005-10-26  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	Enumerate the substorage transforms for any patches that are passed on
	the command line with PATCH=.  Need to implement
	table_apply_transform() before this will do anything interesting.

2005-10-26  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/user/exticon.c, dlls/user/tests/resource.c:
	- Try LoadLibrary/LoadImage to extract icons from wine's built-in dlls
	if SearchPath fails to find the requested file in
	PrivateExtractIcons.
	- Some unit tests for PrivateExtractIcons.

2005-10-26  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/oleaut32/variant.c:
	Handle VT_CY in VarDiv().

2005-10-26  Detlef Riekenberg <wine.dev@web.de>

	* dlls/version/info.c:
	Updated trace to support VERSIONED_PRINTER.

2005-10-26  Peter Beutner <p.beutner@gmx.net>

	* dlls/ntdll/cdrom.c:
	Proper implementation of IOCTL_{STORAGE,CDROM}_CHECK_VERIFY.

2005-10-26  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/defaulthandler.c:
	Implement a Stop function and use this to properly implement
	IOleObject_Close, IAdviseSink_OnClose and the destructor.

2005-10-26  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	- Forward IDispatch functions to the MIDL-generated proxy.
	- Remove special cases caused by previous marshaling of IDispatch &
	IUnknown that is no longer done.
	- Add error messages if an IUnknown or IDispatch method is called when
	it no longer should be.

2005-10-26  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/vartype.c:
	Implement complete VarBstrFromDec() for any valid DECIMAL, with
	internationalization support borrowed from VARIANT_BstrFromReal(). The
	decimal fix for VARIANT_BstrFromReal was encapsulated in a separate
	function and reused.

2005-10-26  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/tests/msg.c:
	Silently ignore WM_PAINT in msg tests.

2005-10-26  Vitaliy Margolen <wine-patch@kievinfo.com>

	* include/winternl.h:
	Add OBJECT_BASIC_INFORMATION to winternl.h.

2005-10-26  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/file.c:
	Cosmetic changes to NtCreateNamedPipeFile change "oa" to  "attr".

2005-10-26  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msipriv.h, dlls/msi/suminfo.c:
	Create an internal handle-free api for reading MSI database summary
	information.

2005-10-26  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	Switch back to using IPicture to load images.  LoadImage did the
	resizing for us, but doesn't handle jpeg files and requires us writing
	a temp file, whereas IPicture handles jpeg files and can load directly
	from a stream.

2005-10-26  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/gdiobj.c, dlls/gdi/tests/gdiobj.c, include/wingdi.h:
	Add a test for GetCurrentObject, make it pass under Wine.

2005-10-26  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/secur32/tests/Makefile.in, dlls/secur32/tests/main.c:
	Make secur32.dll tests load on nt 4.0.

2005-10-26  Hans Leidekker <hans@it.vu.nl>

	* dlls/odbccp32/odbccp32.c:
	Implement SQLInstallDriverManager.

2005-10-26  Stefan Huehner <stefan@huehner.org>

	* dlls/msxml3/domdoc.c, dlls/msxml3/tests/domdoc.c:
	Fix IXMLDOMDocument error handling.

2005-10-26  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/msvcrt/undname.c:
	Previous fix incorrectly removed all test for strings starting with
	'?', this is only valid when undname is called with the 'NO_ARGUMENTS'
	flags.

2005-10-26  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/winspool/tests/info.c:
	Fix for GetPrinterDriverDirectoryA test.

2005-10-26  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/tests/path.c:
	Test for return value from CreateDirectory("c:").

2005-10-26  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/wininet/http.c, dlls/wininet/internet.h:
	Make functions static.

2005-10-26  Jan Nieuwenhuizen <janneke@gnu.org>

	* programs/notepad/main.c:
	Windows XP does not always include the executable file name on the
	command line.

2005-10-26  Jan Nieuwenhuizen <janneke@gnu.org>

	* programs/notepad/dialog.c:
	Need an explicit truncate command to shorten the length of a file.

2005-10-26  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/capi2032/cap20wxx.c:
	Fix gcc 4 warnings.

2005-10-26  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/gdi/tests/metafile.c:
	Link to {G|S}etRelAbs() during runtime as Win9x OSes miss them.

2005-10-26  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/tests/text.c, dlls/user/text.c:
	Fixed a lot of bugs in TEXT_TabbedTextOut. With the test cases used to
	find them.

2005-10-26  Alexandre Julliard <julliard@winehq.org>

	* ChangeLog, documentation/ChangeLog.ALPHA:
	Start a new ChangeLog file. Older changes moved to
	documentation/ChangeLog.ALPHA.

2005-10-25  Alexandre Julliard <julliard@winehq.org>

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

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